ClimFlowsPlots
Documentation for ClimFlowsPlots.
ClimFlowsPlots.SphericalInterpolations
ClimFlowsPlots.SphericalInterpolations.SubGraph
ClimFlowsPlots.SphericalInterpolations.Tree
ClimFlowsPlots.SphericalInterpolations.lonlat_interp
ClimFlowsPlots.SphericalInterpolations.meshtree
ClimFlowsPlots.SphericalInterpolations.spheretree
ClimFlowsPlots.SphericalInterpolations.subgraphs
ClimFlowsPlots.SphericalInterpolations.traverse
ClimFlowsPlots.VoronoiSphere.plot_2D
ClimFlowsPlots.VoronoiSphere.plot_native_3D
ClimFlowsPlots.VoronoiSphere.plot_orthographic
ClimFlowsPlots.VoronoiSphere.plot_2D
— Methoddata = Makie.Observable(data) # must be on primal mesh
fig = plot_2D(sphere, data ; resolution=1.0)
display(fig)
data[] = new_data # updates the plot
display(fig)
Plots scalar data as a function of longitude and latitude. Data must be a scalar defined at primal cells of a spherical Voronoi mesh and passed as a Makie.Observable. Data is interpolated linearly to a regular lon-lat grid of resolution resolution
before plotting.
ClimFlowsPlots.VoronoiSphere.plot_native_3D
— Methoddata = Makie.Observable(data) # must be on primal mesh
fig = plot_native_3D(sphere, data ; zoom=1.6)
display(fig)
data[] = new_data # updates the plot
display(fig)
Plots scalar data in a stereographic view. Data must be a scalar defined at primal cells of a spherical Voronoi mesh and passed as a Makie.Observable. Data on
native mesh is used without interpolation, but plotting interpolates linearly between
primal cell centers (which coincides with triangle vertices).
ClimFlowsPlots.VoronoiSphere.plot_orthographic
— Methoddata = Makie.Observable(data) # must be on primal mesh
fig = plot_voronoi_orthographic(sphere, data ; zoom=1.6)
display(fig)
data[] = new_data # updates the plot
display(fig)
Plots scalar data in a stereographic view. Data must be a scalar defined at primal cells of a spherical Voronoi mesh and passed as a Makie.Observable. Data is interpolated linearly to a regular lon-lat grid of resolution resolution
before plotting.
ClimFlowsPlots.SphericalInterpolations
— ModuleAcceptably fast computation of interpolation weights from an unstructured spherical triangulation to arbitrary points on the unit sphere. The mesh is first recursively decomposed into submeshes using Metis, resulting in a tree. Bounding spheres are constructed starting from the leaves. The tree structure is used to search for the triangle containing a given point in logarithmic time. Interpolation itsef is linear with positive weights.
ClimFlowsPlots.SphericalInterpolations.SubGraph
— TypeSubset of a parent graph. Keeps the mapping from indices in the subgraph to indices in the parent graph.
ClimFlowsPlots.SphericalInterpolations.Tree
— TypeTree with data of type Node
ClimFlowsPlots.SphericalInterpolations.lonlat_interp
— Methodinterp = lonlat_interp(mesh, lons, lats)
data_lonlat = interp(data_mesh)
Return interp
, which can be called to interpolate data given at mesh nodes onto a regular lon-lat mesh. Lons and Lats are in degrees.
ClimFlowsPlots.SphericalInterpolations.meshtree
— MethodTurns a graph into a tree by recursive partitioning into parts
subgraphs.
ClimFlowsPlots.SphericalInterpolations.spheretree
— FunctionGiven bounding spheres for leaves, constructs bounding spheres at each level of the tree.
ClimFlowsPlots.SphericalInterpolations.subgraphs
— MethodPartitions a (sub)graph into parts
subgraphs using Metis.
ClimFlowsPlots.SphericalInterpolations.traverse
— MethodApplies function fun
to x, v
for all triangles v
of tree tree
whose bounding sphere contains x
until fun
returns anything different from nothing.