2D Rotation Generator

RotMatrixGenerator2

example

julia> m = rand(2,2)2×2 Matrix{Float64}:
 0.596184  0.637158
 0.879545  0.550411
julia> s = RotMatrixGenerator{2}(m - m')2×2 RotMatrixGenerator2{Float64} with indices SOneTo(2)×SOneTo(2): 0.0 -0.242387 0.242387 0.0
julia> exp(s)2×2 RotMatrix2{Float64} with indices SOneTo(2)×SOneTo(2): 0.970768 -0.24002 0.24002 0.970768
julia> log(exp(s))2×2 RotMatrixGenerator2{Float64} with indices SOneTo(2)×SOneTo(2): 0.0 -0.242387 0.242387 0.0

Angle2dGenerator

example

julia> s = Angle2dGenerator(0.42)2×2 Angle2dGenerator{Float64} with indices SOneTo(2)×SOneTo(2)(0.42):
 0.0   -0.42
 0.42   0.0
julia> exp(s)2×2 Angle2d{Float64} with indices SOneTo(2)×SOneTo(2)(0.42): 0.913089 -0.40776 0.40776 0.913089
julia> log(exp(s))2×2 Angle2dGenerator{Float64} with indices SOneTo(2)×SOneTo(2)(0.42): 0.0 -0.42 0.42 0.0
julia> rotation_angle(exp(s))0.42
julia> rotation_angle(exp(2s))0.84
julia> rotation_angle(exp(2s)) / rotation_angle(exp(s))2.0