Adding adjoint and adjoint transpose functions
							parent
							
								
									302978a93d
								
							
						
					
					
						commit
						eada1ee505
					
				|  | @ -132,6 +132,8 @@ public: | |||
|    * Ad_pose is 3*3 matrix that when applied to twist xi \f$ [T_x,T_y,\theta] \f$, returns Ad_pose(xi) | ||||
|    */ | ||||
|   Matrix3 AdjointMap() const; | ||||
| 
 | ||||
|   /// Apply AdjointMap to twist xi
 | ||||
|   inline Vector3 Adjoint(const Vector3& xi) const { | ||||
|     return AdjointMap()*xi; | ||||
|   } | ||||
|  | @ -141,6 +143,20 @@ public: | |||
|    */ | ||||
|   static Matrix3 adjointMap(const Vector3& v); | ||||
| 
 | ||||
|   /**
 | ||||
|    * Action of the adjointMap on a Lie-algebra vector y, with optional derivatives | ||||
|    */ | ||||
|   Vector3 adjoint(const Vector3& xi, const Vector3& y) { | ||||
|     return adjointMap(xi) * y; | ||||
|   } | ||||
| 
 | ||||
|   /**
 | ||||
|    * The dual version of adjoint action, acting on the dual space of the Lie-algebra vector space. | ||||
|    */ | ||||
|   Vector3 adjointTranspose(const Vector3& xi, const Vector3& y) { | ||||
|     return adjointMap(xi).transpose() * y; | ||||
|   } | ||||
| 
 | ||||
|   /**
 | ||||
|    * wedge for SE(2): | ||||
|    * @param xi 3-dim twist (v,omega) where | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue