Skip to content

Coordinate systems (numerical) ​

The same operators with derivatives by automatic differentiation. Usage: Numerical coordinate systems.

The accessors listed under Coordinate systems — lame_coefficients, christoffel, normalized_basis, natural_basis, unitvec, natvec — all take an extra point argument here.

TensND.PointwiseGeometry Type
julia
PointwiseGeometry{X,R,G} <: AbstractGeometry

The geometry of a chart as three functions of the point x (an AbstractVector of coordinates), for differential operators by automatic differentiation:

  • χ_func(x) : the Lamé coefficients at x;

  • R_func(x) : the rotation matrix whose columns are the unit vectors of the normalized basis at x, in Cartesian components;

  • Γ_func(x) : the Christoffel symbols at x, Γ[i,j,k] = Γᵏᵢⱼ.

A CoordinateSystem of this geometry takes fields as functions of the point and returns functions of the point: grad(f, CS) is x₀ -> ∇f(x₀). The bases and the Lamé coefficients depend on the point too, and are read with it: normalized_basis(CS, x₀), lame_coefficients(CS, x₀), ….

Predefined: coorsys_cartesian(PointwiseGeometry), coorsys_polar(PointwiseGeometry), coorsys_cylindrical(PointwiseGeometry), coorsys_spherical(PointwiseGeometry), each with an optional element type (Float64 by default); any chart from its position vector with CoordinateSystem(OM_func, dim, T).