code: def exp_se3(S: jnp.ndarray, theta: float) -> jnp.ndarray:
      """Exponential map from Lie algebra so3 to Lie group SO3.
  
      Modern Robotics Eqn 3.88.
  
      Args:
        S: (6,) A screw axis of motion.
        theta: Magnitude of motion.
  
      Returns:
        a_X_b: (4, 4) The homogeneous transformation matrix attained by integrating
          motion of magnitude theta about S for one second.
      """
      w, v = jnp.split(S, 2)
      W = skew(w)
      R = exp_so3(w, theta)
      p = (
          theta * jnp.eye(3)
          + (1.0 - jnp.cos(theta)) * W
          + (theta - jnp.sin(theta)) * W @ W
      ) @ v
      return rp_to_se3(R, p)
  
file_path: nerfies/nerfies/rigid_body.py
imports: import jax
  from jax import numpy
label_desc: Use image node_id 4 for calling a global function with example usage: exp_se3(S, theta) and returns: rp_to_se3