Trait diffgeom::coordinates::ConversionTo [] [src]

pub trait ConversionTo<T: CoordinateSystem + 'static>: CoordinateSystem where T::Dimension: Pow<U2>, T::Dimension::Output: ArrayLength<f64> {
    fn convert_point(p: &Point<Self>) -> Point<T>;

    fn jacobian(p: &Point<Self>) -> Matrix<T> { ... }
    fn inv_jacobian(p: &Point<Self>) -> Tensor<T, (CovariantIndex, ContravariantIndex)> { ... }
}

Trait used for conversions between different coordinate systems. Implementing ConversionTo<T> for a CoordinateSystem will allow objects in that system to be converted to the system T (note that T also has to be a CoordinateSystem).

Required Methods

fn convert_point(p: &Point<Self>) -> Point<T>

Function converting the coordinates of a point.

Provided Methods

fn jacobian(p: &Point<Self>) -> Matrix<T>

Function calculating a Jacobian at a point - that is, the matrix of derivatives of the coordinate conversions.

This will be contracted with contravariant indices in the tensor.

fn inv_jacobian(p: &Point<Self>) -> Tensor<T, (CovariantIndex, ContravariantIndex)>

The inverse matrix of the Jacobian at a point.

In conversions, it will be contracted with covariant indices.

Implementors