Mercurial > repos > public > sbplib_julia
annotate docs/src/grids_and_grid_functions.md @ 1996:d89f7a1a6f37 feature/grids/manifolds
Add some notation to the docs page
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 23 Apr 2025 09:02:20 +0200 |
parents | ee3fc2d83c73 |
children |
rev | line source |
---|---|
1341
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 # Grids and grid functions |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 |
1347
08f06bfacd5c
Fix typos and formatting of documentation
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1341
diff
changeset
|
3 The submodule `Grids` aims to provide types and logic for all types of grids that are useful for implementing summation-by-parts difference methods. It provides an abstract top level type `Grid` which defines a broad interface for how a general grid is supposed to work. Currently only equidistant grids are supported, but the basic structure supports implementations of curvilinear grids, multi-block grids, periodic grids and much more. |
1341
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 The module also has functionality for creating and working with grid functions. |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 ## Interface for grids |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 All grids are expected to work as a grid function for the coordinate function, and thus implements Julia's Indexing- and Iteration-interfaces. Notably they are *not* abstract arrays because that inteface is too restrictive for the types of grids we wish to implement. |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 |
1631
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
10 |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
11 ## Plotting |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
12 Plotting of grids and grid functions is supported through a package extension with Makie.jl. |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
13 |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
14 For grids we have: |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
15 * `plot(::Grid{<:Any,2})` (same as `lines`) |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
16 * `lines(::Grid{<:Any,2})` |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
17 * `scatter(::Grid{<:Any,2})` |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
18 |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
19 For 1D grid functions we have: |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
20 * `plot(::Grid{<:Any,1}, ::AbstractVector)` (same as `lines`) |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
21 * `lines(::Grid{<:Any,1}, ::AbstractVector)` |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
22 * `scatter(::Grid{<:Any,1}, ::AbstractVector)` |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
23 |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
24 For 2D grid functions we have: |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
25 * `plot(::Grid{<:Any,2}, ::AbstractArray{<:Any,2})` (constructs a 2d mesh) |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
26 * `surface(::Grid{<:Any,2}, ::AbstractArray{<:Any,2})` |
ee3fc2d83c73
Write out available plot methods in docs
Jonatan Werpers <jonatan@werpers.com>
parents:
1347
diff
changeset
|
27 |
1341
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 ## To write about |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 <!-- # TODO: --> |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 * Grid functions |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 * Basic structure |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 * Indexing |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
33 * Curvilinear |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
34 * Multiblock |
5761f4060f2b
Start adding general info about grids to docs
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
35 * Vector valued grid functions |