apply_parameter_step

Function apply_parameter_step 

Source
pub fn apply_parameter_step(
    variables: &mut HashMap<String, VariableEnum>,
    step: MatRef<'_, f64>,
    variable_order: &[String],
) -> f64
Expand description

Apply parameter update step to all variables.

This is a common operation used by all optimizers (Levenberg-Marquardt, Gauss-Newton, Dog Leg). It applies a tangent space perturbation to each variable using the proper manifold plus operation.

§Arguments

  • variables - Mutable map of variables to update
  • step - Full step vector in tangent space (faer matrix view)
  • variable_order - Ordered list of variable names (defines indexing into step vector)

§Returns

  • Step norm (L2 norm) for convergence checking

§Implementation Notes

The step vector contains concatenated tangent vectors for all variables in the order specified by variable_order. Each variable’s tangent space dimension determines how many elements it occupies in the step vector.