areWithin function
Returns whether or not the magnitude of the difference between two
quantities is less than or equal to the specified tolerance.
Implementation
bool areWithin(Quantity q1, Quantity q2, Quantity tolerance) {
if (q1.dimensions != q2.dimensions || q2.dimensions != tolerance.dimensions) {
throw DimensionsException(
'The two quantities and tolerance must have the same dimensions');
}
return (q1 - q2).abs().valueSI <= tolerance.valueSI;
}