novaphy.ik.IKObjective¶
Abstract base class for one IK residual/Jacobian block.
Concrete objectives implement:
| Method | Contract |
|---|---|
residual_dim() |
Number of rows contributed to the stacked residual. |
compute_residuals(fk, q, residuals, start_idx, *, problem_idx=None) |
Write this objective's residual rows. |
compute_jacobian(fk, q, jacobian, start_idx, *, problem_idx=None, mode="analytic") |
Write this objective's Jacobian rows. |
supports_analytic() |
Whether a hand-written analytic path is available. |
init_buffers(model, jacobian_mode) |
Optional post-layout allocation hook. |
IKSolver assigns total_residuals, residual_offset, and n_batch
through set_batch_layout(...); application code normally constructs a
concrete objective rather than calling this plumbing directly.
Built-in subclasses are
IKObjectivePosition,
IKObjectiveRotation, and
IKObjectiveJointLimit.