diff --git a/ext/ManifoldsTestExt/tests_group.jl b/ext/ManifoldsTestExt/tests_group.jl index df68811c3..55d3616ea 100644 --- a/ext/ManifoldsTestExt/tests_group.jl +++ b/ext/ManifoldsTestExt/tests_group.jl @@ -553,6 +553,10 @@ function test_group( adjoint_action(G, g_pts[2], adjoint_action(G, g_pts[2], X, RightAction())), X, ) + # adjoint action at identity + for conv in [LeftAction(), RightAction()] + isapprox(TangentSpace(G, identity_element(G)), adjoint_action(G, e, Xe_pts[1]), Xe_pts[1]) + end if test_mutating Z = allocate(X) adjoint_action!(G, Z, g_pts[2], X) diff --git a/src/groups/circle_group.jl b/src/groups/circle_group.jl index 884d99fe2..e8266bd05 100644 --- a/src/groups/circle_group.jl +++ b/src/groups/circle_group.jl @@ -166,7 +166,6 @@ end adjoint_action(::RealCircleGroup, p, X) = X adjoint_action(::RealCircleGroup, p, X, ::ActionDirection) = X -adjoint_action!(::RealCircleGroup, Y, p, X) = copyto!(Y, X) adjoint_action!(::RealCircleGroup, Y, p, X, ::ActionDirection) = copyto!(Y, X) for AD in [LeftAction, RightAction] diff --git a/src/groups/group.jl b/src/groups/group.jl index 3395405a4..7efe4f4e0 100644 --- a/src/groups/group.jl +++ b/src/groups/group.jl @@ -467,16 +467,6 @@ end function adjoint_action!(G::AbstractDecoratorManifold, Y, p, X) return adjoint_action!(G, Y, p, X, LeftAction()) end -function adjoint_action!( - ::TraitList{<:IsGroupManifold}, - G::AbstractDecoratorManifold, - Y, - p, - X, -) - BG = base_group(G) - return adjoint_action!(BG, Y, p, X, LeftAction()) -end # fall back method: the right action is defined from the left action function adjoint_action!( ::TraitList{<:IsGroupManifold},