symforce.jacobian_helpers module

tangent_jacobians(expr, args)[source]

Compute jacobians of expr, a Lie Group element which is a function of the Lie Group elements in args. Jacobians are derivatives in the tangent space of expr with respect to changes in the tangent space of the arg, as opposed to jacobians of the storage of either which could be trivially computed with sf.Matrix.jacobian or sf.Expr.diff

Parameters:
  • expr (Any) – The final expression that should be differentiated

  • args (Sequence[Any]) – Sequence of variables (can be Lie Group elements) to differentiate with respect to

Return type:

List[Matrix]

Returns:

The jacobian expr_D_arg for each arg in args, where each expr_D_arg is of shape MxN, with M the tangent space dimension of expr and N the tangent space dimension of arg

tangent_jacobians_first_order(expr, args)[source]

An implementation of tangent_jacobians (so imagine tangent_jacobian’s doc-string is cut and pasted here).

Parameters:
  • expr (Any) –

  • args (Sequence[Any]) –

Return type:

List[Matrix]

tangent_jacobians_chain_rule(expr, args)[source]

An implementation of tangent_jacobians (so imagine tangent_jacobian’s doc-string is cut and pasted here).

Parameters:
  • expr (Any) –

  • args (Sequence[Any]) –

Return type:

List[Matrix]