13 IReadOnlyDictionary<int, double> variableValues)
15 ArgumentNullException.ThrowIfNull(
18 ArgumentNullException.ThrowIfNull(
22 constraint.LeftHandSide.Constant -
26 in constraint.LeftHandSide.Terms)
28 if (!variableValues.TryGetValue(
30 out
double variableValue))
32 throw new KeyNotFoundException(
33 $
"No value is available for variable identifier '{term.VariableId}'.");
36 if (
double.IsNaN(variableValue) ||
37 double.IsInfinity(variableValue))
39 throw new InvalidOperationException(
40 $
"Variable identifier '{term.VariableId}' has a non-finite value.");
48 if (
double.IsNaN(value) ||
49 double.IsInfinity(value))
51 throw new InvalidOperationException(
52 "The evaluated Lagrangian residual is not finite.");