CFPlanets

Documentation for CFPlanets.

CFPlanets.ShallowTradPlanetType
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.

source
CFPlanets.conformal_factorsFunction
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

source
CFPlanets.coriolisFunction
f = coriolis(planet, lon, lat) # spherical geometry
f = coriolis(planet, x, y)     # logically Cartesian

Returns the Coriolis parameter corresponding to geometric approximation planet.

source
CFPlanets.orthogonal_factorsFunction
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³)²

source
CFPlanets.scale_factorFunction
factor = scale_factor(planet::ConformalPlanet, lon, lat) # spherical domain
factor = scale_factor(planet::ConformalPlanet, x, y)     # logically Cartesian domain

Returns 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.

source