Rounding of numbers

On most computer systems, decimal numbers that have 5 as the last digit are automatically rounded up when removing a decimal place. This may create a problem.

Some people have a rule that SolidWorks drawings should not have overridden dimension values (Override values).  I generally agree.  Yet, there are several legitimate reasons to use Override values.  One major reason is for proper rounding of linear dimensions for removed digits after the decimal.  Currently, SolidWorks offers no option that allows the user to automatically round dimension numbers in a way that is consistent with current industry standards and practices.

SOLIDWORKS 2015 now has several rounding options that follow the rules below.  More information, please see SOLIDWORKS What’s New Rounding article.

Rounding rule for dimensions

On most computer systems, decimal numbers that have 5 as the last digit are automatically rounded up when removing a decimal place.  For example, the number 1.425 rounds up to 1.43.  This creates a problem.  Most standards require that such numbers are rounded to the nearest even number in the last decimal place.  For example, that number 1.425 should be rounded to 1.42, and 1.435 should be rounded to 1.44.

ASTM E 29 states:

6.4.3 When the digit next beyond the last place to be retained is 5, and there are no digits beyond this 5, or only zeros, increase by 1 the digit in the last place retained if it is odd, leave the digit unchanged if it is even. Increase by 1 the digit in the last place retained, if there are digits beyond this 5.

NASA’s Engineering Drawing Standards Manual states:

When the first digit discarded is exactly 5, followed only by zeros, the last digit retained (i.e., the digit preceding the 5…) should be rounded upward if it is an odd number, but no adjustment made if it is an even number. For example, 4.365, when rounded to three significant digits, becomes 4.36. The number 4.355 would also round to the same value, 4.36, if rounded to three significant digits.  This procedure is known as odd-even rounding.

It is my understanding that this rule helps reduce statistical bias by allowing different numbers to be rounded up or down.  Using the computer default rule (5 is always rounded up) only allows for the upward rounding of such numbers.  This can create greater statistical errors, particularly when compounding rounded numbers to derive further rounded numbers.

Rounding as it affects tolerances

No rule is absolute.  There are other considerations when rounding.  A number should never be rounded so that it increases the original limits of a dimension.  Although this rule mostly applies to inspection techniques, it can also apply to specification.  For example, if there is a feature whose size limits are 1.255-1.275, the specification cannot be rounded so its limits are 1.25-1.28.  In such a case where rounding occurs, the specification limits should be 1.26-1.27.  Fortunately, this isn’t something that often occurs in mechanical design (though it does pop up when trying to apply dual dimensions).

Usually, rounding the limits is something that more often happens in quality assurance during incoming inspection of products.  In such cases, Interpretation of Limits rule from ASME Y14.5 declares limits are absolute.  For example, 12.25 MAX is the same as 12.2500000000000000 MAX.  If the feature measurement is 12.2540, that measurement should not be rounded to 12.25, as it is still out of tolerance because it exceeded 12.25.

SolidWorks should supports more rounding options

Right now, SolidWorks does offer one rounding option for dimensions.  In documents options, there is a setting to round numbers to the nearest fraction, but only if fractional numbers are in use.  I would like to see other rounding options supported, but not a document option.  SolidWorks should have a setting added to the dimension PropertyManager that allows the user to establish a rounding rule for a particular dimension.  For each dimension, users should have a choice to use the odd-even rounding rule, nearest fraction rounding rule (only when fractional numbers are in use) or always round 5 up rule.  This shouldn’t just be for drawings.  It should also be available in the model because they are often used as part of the product definition and because dimensions in the model can be inserted into a drawing.

For now, one can use Override values on the drawing.  The drawback to this is that Override values do not automatically update if there is a change to the associated model geometry.

So, this sounds like this issue should be yet another Enhancement Request.

As of SOLIDWORKS 2015, there are several options for numerical rounding which are available.

  • Round half away from zero, where the only digit being removed is 5, then round the last remaining digit away from zero.
  • Round half towards zero, where the only digit being removed is 5, then round the last remaining digit towards zero.
  • Round half to even, where the only digit being removed is 5, then round the last remaining digit so that it is an even number.
  • Truncate without rounding, where any and all digits being removed have no effect on the last remaining digit.

There is also an option to only apply alternative round methods to dimensions, with the setting Only apply rounding method to dimensions.  When this setting is checked, round half away from zero method is applied to all system and properties values, but the alternative rounding method (round half towards zero, round half to even or truncate without rounding) is applied specifically to dimensions.  Without this option checked, the chosen rounding method applies everywhere in SOLIDWORKS.

To account for dual dimensioning issues, tolerance rounding includes an option to fit the secondary unit’s tolerance range so that it does not extend outside of the primary unit’s tolerance range.  To use this capability, goto Tools > Options > Document Properties > Dimensions and click on Tolerance button. In the Tolerance dialog, check the option Inward rounding of secondary unit tolerance extents

How to dimension feature patterns on drawings

A couple of days ago, I briefly covered the mythical specification “non-accumulative tolerance” (or “non-cumulative”) as it is often applied to direct dimensions on feature patterns.  See the example in Figure 1 where the dimensional callout attempts to simply dimension a pattern without considering tolerance stack-up.  However, this attempt fails since any two non-adjecent holes cannot avoid accumulation of tolerance due to the dimensioning scheme.  The problem gets worse if three or more positions within the patten are compared to each other.

Non-accumulative tolerance dimension on a pattern
Figure 1

ASME repetitive feature dimensioning scheme

ASME Y14.5-2009 actually provides a linear method to detail feature patterns, called repetitive features and dimensions.  See Figure 2. Unfortunately, the standard does not provide any tolerance rules for its prescribed scheme. Presumably, this leads us to interpret a repetitive feature dimension as though it is shorthand for chain dimensioning.  Chain dimensioning accumulates tolerance as the pattern departs from the dimensioned start position.  Sometimes this is OK, but often this is unacceptable since the accumulation of tolerance can quickly lead to features that do not align to mating features on other components.

Figure 2
Figure 2

Disorganized direct dimensions

Another dimensioning scheme that I’ve seen involves a complete disregard for the fact that a pattern exists.  See Figure 3.  Directly dimensioning each of the positions within the pattern to each other may be acceptable in some scenarios, but likely isn’t a very clear choice for larger feature patterns.  The problem with this scheme is that it can be very difficult to determine the true accumulation of the tolerance stack-up.  It may also be difficult to determine design intent.

Figure 3
Figure 3

Baseline dimension scheme

To avoid the issues associated with other direct dimensioning schemes, one may choose to use baseline dimensioning, which may also be called rectangular coordinate dimensioning in some scenarios.  The advantage of a baseline dimension scheme is that it limits the accumulation of tolerances to the stake-up from just two dimensions.  This is because the total stack-up between any two positions within the feature pattern are related through a common baseline.  The problem with baseline dimensioning is obvious in Figure 4; its take up a lot of space on the drawing.

Figure 4
Figure 4

Ordinate dimensioning

A common alternative to baseline dimensioning is ordinate dimensioning, also known as rectangular coordinate dimensioning without dimension lines.  This scheme also relies on a baseline, referred to as zero (0), from which all of the features are dimensioned.  The advantage of ordinate dimensioning is that it takes up far less space on a drawing, as shown in Figure 5.  Tolerance stack-up is limited to just two dimensions between any two positions within the pattern.

Figure 5
Figure 5

Using GD&T for best results

The best way to avoid accumulation of tolerances is to use a methodology that does not rely on any form of direct dimensions.  ASME Y14.5 actually suggests that GD&T should be used instead of direct dimensions to locate features.  I have discovered the hard way that many individuals in the engineering field have an irrational fear of GD&T.  Even still, GD&T provides a far superior method for the location of positions within a feature pattern. The example in Figure 6 shows a less cluttered drawing.  With the addition of MMC to the feature control frame, this method could provide even better results since it would make use of bonus tolerance.  The position of each feature within the pattern has an optimal tolerance zone that more closely matches design intent.  One more added benefit is that all features controlled by a single feature control frame are automatically considered as a pattern.

Using GD&T to locate features
Figure 6

Since the tolerance zone is optimized, using GD&T may help reduce costs by allowing the manufacturing process to vary in a way that is more in line with design intent.  In turn, this can reduce the number of unnecessary part rejections.

Conclusion

When detailing feature patterns, one may wish to avoid the use of direct dimensioning methods or shortcuts like the mythical “non-accumulative tolerance”.  The best choice to detail a feature pattern is GD&T.  However, if GD&T is not desired, the next best method is prolly an ordinate dimension scheme.  It should be noted that for each of the dimensioning and tolerancing schemes shown within this article, there are a variety of ways to implement them.  This article is meant to present general examples.  Actual tolerancing requirements are guided by design intent and other considerations per individual cases.