diff --git a/src/Numerics/Optimization/ObjectiveFunctions/NonlinearObjectiveFunction.cs b/src/Numerics/Optimization/ObjectiveFunctions/NonlinearObjectiveFunction.cs index fce4a8eab..e9c0492da 100644 --- a/src/Numerics/Optimization/ObjectiveFunctions/NonlinearObjectiveFunction.cs +++ b/src/Numerics/Optimization/ObjectiveFunctions/NonlinearObjectiveFunction.cs @@ -214,13 +214,11 @@ public void SetObserved(Vector observedX, Vector observedY, Vect weights = weights.PointwiseAbs(); } - Weights = (weights == null) + Weights = weights == null ? null - : Matrix.Build.DenseOfDiagonalVector(weights); + : Matrix.Build.DiagonalOfDiagonalVector(weights); - L = (weights == null) - ? null - : Weights.Diagonal().PointwiseSqrt(); + L = weights?.PointwiseSqrt(); } ///