validate_gradient#
- lumopt2.utils.fd_grad.validate_gradient(project: Project, params: ndarray, indices: List[int] = None, perturbation: float = 0.01) tuple[ndarray, ndarray, float]#
Validate the adjoint gradient by comparing it to a finite difference gradient for specified parameter indices.
- Parameters:
- project
lumopt2.Project Project instance for which the gradient is validated.
- params
np.ndarray Optimization parameters for gradient computation.
- indices
List[int],optional List of parameter indices to validate (default: all).
- perturbation
float Small perturbation value for finite difference.
- project
- Returns:
tuple(fd_grad, grad_adj_at_indices, err_rel): finite difference gradient, adjoint gradient, relative error.
- Raises:
ValueErrorIf input types are invalid.