CFPlanets
Documentation for CFPlanets.
CFPlanets.ConformalPlanetCFPlanets.ShallowTradPlanetCFPlanets.TankCFPlanets.Tank2DCFPlanets.Tank3DCFPlanets.conformal_factorsCFPlanets.coriolisCFPlanets.orthogonal_factorsCFPlanets.scale_factor
CFPlanets.ConformalPlanet — Type
abstract type ConformalPlanet endAn abstract type for planets such that the two metric factors are equal.
CFPlanets.ShallowTradPlanet — Type
struct ShallowTradPlanet{F} <: ConformalPlanet
planet = ShallowTradPlanet(radius, Omega)Instances of this type describe a spherical-geoid, shallow-atmosphere, traditional approximation. radius is the radius of the planet and Omega its rotation rate.
CFPlanets.Tank — Type
TankAbstract type for tanks. Represents a container with defined dimensions and gravitational acceleration.
CFPlanets.Tank2D — Type
Tank2DRectangular 2D tank with length Lx, height Lz, and gravitational acceleration g.
CFPlanets.Tank3D — Type
Tank3DRectangular 3D tank with length Lx, width Ly, height Lz, and gravitational acceleration g.
CFPlanets.conformal_factors — Function
h₂, h³, R¹, Φ = conformal_factors(h::ConformalHamiltonian, ξ¹, ξ², ξ³)Return covariant horizontal scale factors h₂, contravariant vertical scale factor h³, contravariant planetary velocity and geopotential at point with coordinates (ξ¹, ξ², ξ³). See also orthogonal_factors
CFPlanets.coriolis — Function
f = coriolis(planet, lon, lat) # spherical geometry
f = coriolis(planet, x, y) # logically CartesianReturns the Coriolis parameter corresponding to geometric approximation planet.
CFPlanets.orthogonal_factors — Function
h₁, h₂, h³, R¹, Φ = orthogonal_factors(h::OrthogonalHamiltonian, ξ¹, ξ², ξ³)Return covariant horizontal scale factors (h₁, h₂), contravariant vertical scale factor h³, contravariant planetary velocity and geopotential at point with coordinates (ξ¹, ξ², ξ³). NB: metric factors are the squares of scale factors: g₁₁=(h₁)² g₂₂=(h₂)² g³³=(h³)²
CFPlanets.scale_factor — Function
factor = scale_factor(planet::ConformalPlanet, lon, lat) # spherical domain
factor = scale_factor(planet::ConformalPlanet, x, y) # logically Cartesian domainReturns the scale factor at a certain point on planet`, given by its abstract coordinates. The scale factor is related to the physical length of a horizontal displacement by:
δl = scale_factor * sqrt(δlat^2 + cos(lat)^2 δlon^2) # or
δl = scale_factor * sqrt(δx^2 + δy^2).For instance if the the spherical-geoid and shallow-atmosphere approximations are made, the scale factor is the planetary radius, assumed constant.