Home | ADCATS Info | Search | Site Map | Bulletin Board | Reports & Publications | Bibliography | Contact Us
Publication # 4
Home : Publication's Index : #4

A New Monte Carlo Simulation Method for
Tolerance Analysis of Kinematically Constrained Assemblies

Jinsong Gao
Kenneth W. Chase
Spencer P. Magleby

Mechanical Engineering Department
Brigham Young University

Table of Contents Remote | Post a comment concerning this paper.


A generalized Monte Carlo simulation method is presented for tolerance analysis of mechanical assemblies with small kinematic adjustments. This is a new tool for assembly tolerance analysis based on vector-loop-based assembly models with kinematic assembly constraints. Methods have been developed for simulating both closed loop and open loop assembly constraints as well as overdetermined assembly systems. Both dimensional and geometric feature variations of the components may be included in the assembly simulation.

Compared to the traditional Monte Carlo simulation of mechanical assemblies, the new method does not require explicit functions to describe the assembly parameters. Explicite functions are often quite difficult or impossible for designers to obtain for 2-D and 3-D assemblies. An iterative nonlinear solution is required for each simulated assembly to assure that closed loop assembly constraints are satisfied. A general four parameter statistical distribution is fit to the resulting assembly data for estimating percent rejects.

1. Introduction

Assembly tolerance analysis is a key element in industry for improving product quality and reducing overall cost. It provides a quantitative design tool for predicting the effects of manufacturing variation on performance and cost, and promotes concurrent engineering by bringing engineering requirements and manufacturing requirements together in a common model.

Assembly tolerance analysis involves determining how the components in an assembly interact with each other and how their variations affect assembly constraints. The simple two-component assembly shown in Figure 1 consists of a cylinder in a grrove. Two configurations of the assembly are shown, demonstrating the relationship between dimensional variations in an assembly and the small kinematic adjustments which occur at assembly time. The assembly components have three size dimensions that vary, namely, the height A and angle T of the groove, and the radius R of the cylinder, as shown. The variations in each of the three dimensions have an effect on the distance P, which is not a size dimension. Variation in the parameter P may be important to the function of the assembly and will be referred to as an assembly variable.

The parts are assembled by inserting the cylinder into the groove until it makes contact with the top and bottom mating surfaces. For each set of parts, the distance P will adjust to accommodate the current value of dimensions A, R, and q. The assembly variable P represents the nominal position of the cylinder, while DP represents the change in position of the cylinder when the variations are present. This adjustability of the assembly describes a kinematic constraint, or a closure constraint on the assembly. 2-D and 3-D assembly constraints result in systems of nonlinear algebraic equations relating the assembly parameters, such as P, to the component dimensions, such as A, R, and q.

Figure 1. Kinematic adjustment due to component size variations.


Figure 2 illustrates the same assembly with exaggerated geometric feature variations. For production parts, the contact surfaces are not really flat and the cylinder is not perfectly round. The pattern of surface waviness will differ from one part to the next. In this assembly, the cylinder makes contact on a peak of the lower contact surface, while the next assembly may make contact in a valley. Similarly, the lower surface is in contact with a lobe of the cylinder, while the next assembly may make contact between lobes.

Local surface variations such as these can propagate through an assembly and accumulate just as dimensional variations do. Thus, in a complete assembly model, all three sources of variation, namely, dimension variations, geometric feature variations and assembly or kinematic variations, must be accounted for to assure realistic and accurate results.

Figure 2. Adjustment due to geometric shape variations

Assembly Tolerance Analysis Methods

Statistical tolerance analysis methods can be applied to geometric models of assemblies to predict the magnitude of variation in critical assembly features. The resulting statistical distributions may be used to estimate the percent rejects and to see if the assembly quality specifications will be met. Two methods developed for statistical tolerance analysis of mechanical assemblies are Monte Carlo simulation and a linearization method, using Taylor's series expansion.

Traditional Monte Carlo Simulation

The Monte Carlo method performs assembly simulations using a random number generator which selects values for each manufactured variable, based on the type of statistical distribution assigned by the designer. These values are combined through the assembly function to determine a series of values of the assembly variable. This series is then used to find the first four moments of the assembly variable. Finally, a distribution matching the four moments can be used to determine the mean, standard deviation, and percentage of assemblies which fall outside the design specifications, or assembly reject rate [Sitko 1991, Fuscaldo 1991, Craig 1988].

Monte Carlo simulations have been widely used in tolerance analysis for assemblies which have linear or explicit nonlinear functions to express the assembly variable(s) as a function of the manufactured dimensions [Lehtihet & Dindelli 1989, Doepker & Nies 1989, Early & Thompson 1989, DeDoncker & Spencer 1987].

As alternative, Hura [1988] applied Monte Carlo simulation to the solid model of a mechanical assembly. Here, the solid model is used as the assembly function to calculate the assembly resultants. This approach provides the user with a tool for 2-D and 3-D tolerance simulations. The disadvantage of this method is the slow execution of the software, since for each simulated assembly, the entire solid model must be regenerated.

Limitations of Traditional Monte Carlo Simulation

Traditional Monte Carlo simulation is widely used in assembly tolerance analysis. However, it generally requires an explicit assembly function, that is, each assembly variable must be expressed as a single algebraic function of the manufactured dimensions of the components in the assembly. Finding such an explicit assembly function is very difficult or impossible for designers to derive in 2-D and 3-D space when closed loop kinematic assembly constraints are present.

The practice of fitting a distribution to the calculated moments of the simulated assembly data is an approximation that introduces error in the predicted rejects. The first two moments yield the mean and standard deviation of the distribution. The third and fourth moments describe the skewness and kurtosis (or peakedness) of the distribution. If the data closely approximates a normal distribution, the first two moments are sufficient. For non-normal distributions, the higher order moments become important. However, they are more subject to roundoff and truncation error. The more accurate approach is to simply count the rejects as the assemblies are simulated and to use a large enough sample size to obtain a countable number of rejects of sufficient resolution.

Monte Carlo simulation follows a binomial distribution, i.e., the repetition of many trials yielding conforming or non-conforming assemblies. The sample size must be very large in order to achieve accurate predictions for high quality levels and small non-comforming fractions [Hahn & Shapiro 1967]. Table 1 [Greenwood 1987] illustrates the sample size required to achieve the desired accuracy for various quality levels. It can be seen from the table that a large sample size is required to achieve the high quality levels required in modern manufactured products. This is the main disadvantage of Monte Carlo assembly simulations.

Table 1 Sample size required for Monte Carlo simulations
Sample Size for a Given Error in Rejects (±)
5% 10% 25%
0.9900 0.0100 107,000 27,000 4,300
0.9950 0.0050 215,000 54,000 8,600
0.9973 0.0027 400,000 100,000 16,000
0.9990 0.0010 1,081,000 270,000 43,000
0.9999 0.0001 10,823,000 2,706,000 433,000

Note: The confidence interval is 90%.

Due to the large sample sizes required, Monte Carlo simulation is inefficient as a tolerance design tool. If you change one variable, the entire simulation must be redone. Design iterations, producibility studies or "what if?" analyses become tedious.

The Direct Linearization Method

A linearized method, called the Direct Linearization Method or DLM, has been developed to handle the kinematic assembly constraint equations for 2-D and 3-D assembly tolerance analysis [Chase, Gao & Magleby 1994, Gao, Chase & Magleby 1994]. Such constraints can be readily expressed as nonlinear implicit functions. Using this linearized method, eliminates the need to establish explicit assembly functions for assembly tolerance analysis. A designer is only required to create the vector loop based assembly tolerance model, and specify the tolerances of the component dimensions in the assembly.

For non-linear assembly relationships, the assembly function must be expanded in a multi-variable Taylor series and be truncated to retain first order term. This truncated Taylor's series expansion is an approximation, which depends upon the characteristics of the nonlinear assembly function around the nominal values of the manufactured variables. This method also assumes that the assembly variable be normally distributed for the normal distributions of all components' variations.

The accuracy of the DLM therefore decreases for the cases which involve either non-normally distributed component variations or highly non-linear relationship between the assembly variable and the individual component dimensions.

Table 2 summarizes the comparison of the DLM with traditional Monte Carlo simulation methods.

Table 2 . Comparison of the DLM with traditional Monte Carlo simulation
Monte Carlo
Assembly Function Explicit  
Component Distribution Normal  
Relative Accuracy Good if tolerances are small compared to the nominals and assembly functions are not highly non-linear Accurate if sample sizes are sufficiently large
Relative Efficiency Excellent Poor


In order to include implicit assembly functions and non-normal component distributions in nonlinear assembly tolerance analysis, a new system for Monte Carlo simulation has been developed [Gao 1993, Larsen 1989]. The objective of this paper is to generalize the procedures for Monte Carlo simulation of assembly tolerance problems using vector loop-based assembly tolerance models which were developed for the DLM. This will allow the computer to simulate the assmebly variation automatically when the assembly models are created. Users are only required to specify the components' distributions and the limits of assembly variables. The new Monte Carlo simulation includes generating the manufactured variations of the components in an assembly according to the specified distributions and finding solutions for the assembly variables, such as P for the assembly described in Figure 1 and 2. Statistics will be employed to study the characteristics of the simulated assemblies.

New Monte Carlo Simulation

McCATS was developed to overcome the above shortcomings. It uses the same vector-loop-based assembly tolerance models as discussed in our previous papers [Chase, Gao & Magleby 1994, Gao, Chase & Magleby 1994]. In vector models, the assembly constraints result in implicit functions.

The procedures for McCATS can be outlined as:

    1. Generate random variates representing each of the contributing manufactured dimensions in an assembly. The variations are drawn from the specified statistical distributions. The nominal dimensions of the manufactured variables plus their simulated variations serve as the input to the nonlinear assembly system.
    2. Establish the kinematic assembly constraints. The constraints act as the assembly functions describing the unknown assembly or kinematic variables. These constraints appear in nonlinear implicit functions. Step 2 and step 3 are different from the traditional Monte Carlo simulation.
    3. Choose the appropriate nonlinear solvers and solve for all unknown assembly features.
    4. Repeat the above steps for sufficient number of simulated assemblies to generate a statistical distribution for the assembly features of interest.
    5. Apply limits to those features of interest. Use statistics to evaluate the simulated results of the assembly or kinematic variables and their variations.

The procedure is illustrated graphically in Figure 3.

Figure 3. Monte Carlo simulation for implicit assembly constraints

Outline for the Rest of the Paper

The random number generator has great influence on the accuracy of Monte Carlo simulation. Monte Carlo simulation is accurate only if the random number generator can simulate the specified distributions of the components' variations and the sample sizes are adequate. The next section will discuss the random number generator. The simulation of 2-D and 3-D assemblies will be presented separately in section 3 and 4 since distinctly different assembly constraint equations were used for each case in this research. For a 3-D assembly, the number of assembly variables may be greater than the number of constraint equations. This overdetermined nonlinear system problem is discussed in section 5. Case study is then given and followed by the conclusions.


2. Random Number Generator

The random number generator is a critical element of any Monte Carlo system. The random variates must accurately obey the statistical distribution prescribed for each component.

The random number generator RANO used in this research is taken from Numerical Recipes [Press 1986] and was tested by a previous researcher [Larsen 1989]. The variable distribution to be generated can be Normal, uniform or Lambda distributed, which covers most of the practical area in the skewness-kurtosis plane (see Figure 4). For more information, please refer to Shapiro and Gross [1981].


Figure 4. Skewness vs. kurtosis plane

Input Data

The input data for a nonlinear tolerance simulation includes the complete geometrical data describing an assembly and the distributions of the component variations or tolerances in the assembly. The statistical distributions of the component variations are the most important element of a Monte Carlo simulation, since biased data will result in unreliable variations of the assembly or kinematic variables.

The complete assembly geometrical data includes an algebraic model describing the assembly resultants in terms of its components, along with kinematic joint information, datum list, vector loops, component nominal dimensions and tolerances, as well as geometrical feature tolerances, assembly tolerance limits, etc. Such data information is readily available when the assembly modeling has been performed using the CATS assembly modeling system developed at Brigham Young University on a CAD system and the data or neutral file has been created.

When Monte Carlo simulations are performed at the design stage, before any component parts have been manufactured, the only choice is to assume some distributions for the component variations, based on the experience with previous or similar processes and machines used.

3. 2-D Assembly Tolerance Simulation

Before a Monte Carlo simulation can be performed, one must establish a functional relationship describing the assembly. Figure 5 illustrates a 2-D vector loop model of an assembly model. This vector loop describes a kinematic assembly constraint. Each vector represents a dimension in the chain with an assigned tolerance, or a kinematic variable whose variation is determined by the constraint equations. Similarly, the angles between adjacent vectors in the chain may be manufactured or kinematic.

The vector loop may be represented by a series of coordinate transformations, as follows. The beginning local coordinate system coincides with the global reference frame X-Y. First, the beginning local coordinate system is rotated to the position where its x axis parallel to the vector L1, that is, x1-y1. Then, x1-y1 is translated by the magnitude of the length of vector L1 to the position x2 -y2. This procedure is continued along the vector loop and finally, the loop is closed by rotating the last local coordinate system to coincide with X-Y. The resulting assembly kinematic constraint equations may be represented as a concatenation of transformation matrices.

[R1][T1][R2][T2]...[Ri][Ti]...[Rn][Tn][Rf] = [I] (1)


Figure 5. Example 2-D vector loop assembly constraint

Here [Ri] and [Ti] represent the rotation and translation at node i and [Rf] represents the final rotation. The product is equal to the identity matrix [I] since the loop is closed. This matrix equation can be expressed in projection equations in 2-D,



Where k is an integer. Equation (2), (3) and (4) are the general assembly or kinematic constraint functions in 2-D space.

The sign convention for the relative rotation about the local joint coordinate system is defined as: if the rotation is clock-wise, the angle is negative, otherwise positive.

The geometric feature tolerances can be included in the above projection equations by modeling them as zero length vectors with variations in specified directions at the joint where the geometric feature tolerances apply [Chase, et al. 1994].

There may exist more than one closed vector loop in an assembly, where the unknowns are intercoupled. In 2-D space, there are three assembly or kinematic variables for each vector loop. In such a case, matrix composition method can be employed to set up the overall system of equations, which may be solved simultaneously.

Once the systems of nonlinear equations have been established, the most important work remaining to do is to choose an appropriate method to find the unknowns, i.e., the magnitudes of the assembly or kinematic variables. Three methods have been tried and tested in this research. They are Newton's Method, Broyden's Method and Steepest Descent Method.

From the results of this research, Newton's method and Broyden's method have almost the same order convergence rate. Usually, about five iterations are required for one solution, with the precision to the sixth decimal point and initial values at the nominals. But, the Steepest Descent method converges very slowly and sometimes it takes thousands of iterations to find one solution. So, the Steepest Descent method is used only for finding the first solution, when necessary. Once this solution has been found, the simulation software will switch to either Newton's method or Broyden's method.

The simulation for open loop constraints is trivial, since it does not require iterative solution. For an open loop constraint, there may be one or more closed loop assembly constraints which the assembly must satisfy. The assembly or kinematic variables which have been solved from the closed loop constraints together with the simulated manufactured dimensions for the open loop serve as the input for the open loop constraint equations.

xopen (5)
yopen  (6)
Orientation = tan2(y, x)



4. 3-D Assembly Tolerance Simulation

The procedure for 3-D assembly simulations is the same as that for 2-D assembly simulations. However, the assembly kinematic constraints for 3-D cases can not be described simply in terms of projection equations as they are for 2-D cases, because the rotation part of the kinematic constraints takes the form of matrix equations and it is not possible to form scalar equations, such as equation (4), from them. So equation (1) will be the form of the kinematic constraints for 3-D assemblies.

Figure 6. Three transformation parameters for a 3-D vector

By convention, the 3-D transformation from the previous vector to the next is defined by two rotations (first about the local joint y axis and then the local joint z axis) and a translation along the local joint x axis. Figure 6 illustrates a dimension vector's three transformation parameters.

The transformation matrices are:
[Ry][Rz][T] =  (8)


If fyfz and L are not available, they can be calculated from:

fy (9)
fz   (10)
L =  (11)

Note, if x is negative, fy = 180° - fy.

With this definition of the transformation at each node in an assembly, equation (1) can be rewritten as:

H(u) = [Ry1][Rz1 ][T1]...[Ryi][Rzi][Ti]...[Rynj][Rznj][Tnj] = [I] (12)

where nj is the number of the nodes plus 1 in the assembly.

In order to solve equation (12) for the unknowns in a 3-D assembly, an iterative approach must be set up. The first order Taylor's series expansion of the constraints can be formulated as


where ui is the ith kinematic or assembly variable, m is the total number of the unknowns. Usually, the evaluation of the derivatives with respect to the unknowns is involved in such a scheme. For this reason, the procedure for derivative evaluation must be established. Sandor [1984] gives an analytical formula of the derivative of equation (12) with respect to variable u,


where the loop derivative operator matrix Qj is related to the transformation type and the position of the variable u in equation (12). Replacing the derivative with equation (14)


post-multiplying by H-1and moving H-1 and I to the right-hand side gives:


This is a matrix equation. There are 4 x 4 elements on each side. therefore, Sixteen equations can be formed by equating the corresponding elements on both sides. However, only six elements are independent and meaningful since the rotational part is antisymmetric: the elements above the diagonal equal the negative of those below the diagonal. The independent six elements are Q(1,3)i, Q(2,1)i, Q(3,2)i, Q(1,4)i, Q(2,4)i, and Q(3,4)i. These elements will be used to formulate independent equations for the left hand side of equation (16).

On the right-hand side, there are 12 non zero elements. Six of them (underlined in equation (17)) which correspond to those on the left-hand side will be used for formulating the nonlinear scalar equations to be solved for the unknowns.

H-1- I = (17)

Uicker [1964, 1967, 1969] recommended a form which takes care of the other terms that are not bound by the above six elements. That procedure is adopted in this research. Summarizing, the scalar equations for the iterative procedure can be written in a matrix form as

[S]{Du} = {V}

where [S] is called the system geometry matrix and V is the vector on the right hand side. Du can be found by Newton's method.
{Du} =[S]-1{V} (19)
u(k) - u(k-1) + Du(k-1) (20)

assuming that the inverse [S] exists. If [S] is not invertable, i.e., the system of nonlinear equations is overdetermined, the solution to such a system will be discussed in section 6.

Tests show that this iterative approach is effective. For a single loop 3-D assembly, it takes two to ten iterations to find one solution when the initial input for the unknowns are the nominal values of those dimensions, with the precision to the sixth decimal point.

The open loop constraint in 3-D space can be handled similar as in 2-D assemblies. The position of the end node in the open loop is

{x y z 1}t = M12M23 ...M(i-1)Mi(i+1)...M(n-1)n {0 0 0 1} (21)

where Mj(j+1) represents the transformation matrix at position j in equation (12). If the coordinates of the end point are known, its orientation can be calculated.

Some of the transformation matrices in an open loop may contain kinematic variables which are constrained by the closed loop(s) in the assembly. In this case, the kinematic variable(s) need to be substituted by the solution from equation (18). So, for open loop constraints, no iterative method is required.

The geometric feature tolerances in 3-D assemblies can be treaty in the same way as in 2-D assemblies using the procedures presented by Chase, et al. [1994].

The preceding sections have described an iterative solution procedure for determining the values of the kinematic variables in each simulated assembly. Section 6 will discuss how these results are combined to evaluate statistically the performance of the complete set of simulated assemblies.

5. Overdetermined Nonlinear Assembly Systems

If the system geometry matrix [S] in equation (18) is singular, that is, if there are more equations than the number of the unknowns in the system, the method discussed above will fail. This is called an overdetermined nonlinear assembly system. Generally, there is no exact solution to such a system mathematically. Such systems, however, do exist in 3-D assembly tolerance simulations. This section will use the so-called Gauss-Newton or Generalized Least Squares method [Fletcher 1980] to find an approximation to the 3-D overdetermined assembly system.

A general description of this problem is that it occurs from an attempt to find solutions to the system of m equations

 ri(x)= 0
  i = 1, 2, ... , m


where ri(x) can be interpreted as the residuals of the equations. If m is greater than the number of the unknowns, the system is overdetermined and it is usually not possible to find an exact solution. Therefore, one possibility is to seek a least squares solution to equation (22), which can be obtained by minimizing the function f(x) in equation (23).


The quadratic model is obtained from a truncated Taylor series expansion of f(x) about x(k)


f(x(k) + d) - f(k) + (Ñf(k))t d + ½ dtѲf(k)d


where d = x - x(k)

f(k): the first order derivative matrix or Jacobian matrix

²f(k): the second order derivative matrix or Hessian matrix

Taking derivatives of equation (24) and setting them equal to zero give the condition for a local minimum. Then, the iterative procedure of Newton's method for the quadratic model can be written

  1. Solve Ѳf(k)d=-Ñf(k) for d = d(k)
  2. Set x(k+1) = x(k)+(k)


The first derivative matrix or Jacobian matrix of f(x) in equation (24) can be obtained by the derivative formula for a vector product

(uv) = u)tv +(v)tu


f(x) = r)tr +(r)tr = 2Cr (28)

where C = r1,r2, ¼ , rm)t. The second derivative matrix or Hessian matrix of f(x) can be formulated in the same way.


Since r(x) is the vector of residuals, it is often the case that the components ri(x) are small. This may suggest that a good approximation to the Hessian matrix of f(x) might be

²f(x) 2CCt


The outstanding feature of this approximation is that using the information required to determine the Jacobian matrix, it is possible to approximate the Hessian matrix of the system. This will save a lot of calculations for the evaluation of the Hessian matrix by neglecting the second term in equation (29). But, remember that ri(x) or ²ri(x) or the product of ri(x) ²ri(x) must be small, otherwise the procedure to find an approximation to the system may not converge.

For tolerance simulation of 3-D assemblies, section 5 detailed the iterative procedure for the well-determined system. If the system is overdetermined, the Gauss-Newton method discussed above can be applied. In this case, the residuals are the components of the matrix

D = I - H


Where H is the concatenation of the transformation matrices around the vector loop, and I is the identity matrix. The derivative matrix of r can be obtained by equation (14)

C = -


where m is the number of the unknowns. Since there are only six elements in each Qi which are independent and if the elements used by equation (18) are selected in this case, then let

C = -[S]


In this case, the residuals in equation (31) must be postmultiplied by the inverse of H, which are the same as the right hand side of equation (18) if the other unbounded elements are counted (refer to section 6).

r = {V} =  


where V(i,j) is the ith row and jth column element of H-1. Then, the iteration for the 3-D overdetermined assembly can be obtained very easily.

  1. Solve  [S(k)]t[S(k)]Du = [S(k)]t V(k)
    or Du =([S(k)]t[S(k)])-1[S(k)]t V(k) for Du =Du(k)

  2. Set u(k+1) = u(k) + Du(k)



As stated earlier, the components ri(x) or ²ri(x) or the product of ri(x²ri(x) must be very small so that the Gauss-Newton method converges. If this condition is not met, some measure must be taken to guarantee the convergence of the iterations. Employing a line search is an effective way to achieve this goal.

6. Evaluating the Results of a Simulation

A sample set of the assembly or kinematic variables in a 2-D or 3-D assembly can be obtained from previous sections. This process provides users with following information about the simulated assembly.

6.1 Statistical Data

Statistical data about any feature or kinematic variable in either 2-D or 3-D space may be estimated from the simulated assemblies. Statistical data includes the mean, second, third and fourth moments about zero, that is




where n is the simulation sample size, uij is a simulated value of the ith assembly feature, and  is the mean of the feature. These moments can be easily converted to the moments about the mean. The variation of a kinematic variable is the product of a constant and the standard deviation estimated, i.e., the square root of the second moment about its mean.


usually, k=3. The skewness and kurtosis can be calculated in standard form by equation (42) and (43),







are the second, third and fourth moments about the mean.

6.2 Graphical Output

A computer program for computing the resulting statistical moments of an assembly simulation has been implemented. The four moments are used to fit a Lambda distribution to the simulated results. The statistical data of an assembly feature can be illustrated by the graphical output option built into the software. The graphical output includes: 1) the simulated distribution curves of the assembly or kinematic dimensions, 2) the plot of the simulated and assumed (Normal) distributions of the assembly or kinematic dimensions and 3) the difference plot. These plots may help the user understand how much the assembly or kinematic dimensions are skewed due to assembly nonlinearity and non-Normal component variation distributions.

6.3 Assembly Rejects

In the process of Monte Carlo simulation, the upper and lower limits for any kinematic or assembly variable may be set by engineering performance requirements. These limits will act as bounds to check if the resultant dimension is beyond the limits. Whenever the simulated assembly or kinematic variable is outside limits, the assembly must be rejected, indicating some amount of rework must be done to make the assembly function properly. The rejects can be counted physically during the assembly simulation and the total number of rejects divided by the total simulation number will give the reject rate. This reject rate can also be calculated from the first four moments for a given assembly variable.

7. Case Study

As an example to demonstrate how to apply the McCATS to real assemblies, the tape hub locking assembly discussed in our previous paper [Chase, et al. 1994] is re-examined. Figure 7 shows the assembly with geometric feature tolerances applied. In this case study, effort will be concentrated on the complete locking assembly model which is used to mount and hold a magnetic tape reel in place on a tape drive hub.

The assembly consists of a plunger which can slide vertically against a guide mounted on the base and an arm which can slide horizontally on the base and which makes contact with the beveled surface of the plunger. The position of the arm is determined by the vertical position of the plunger, its level angle, the height of the arm, arm corner radius and the step on the base. As the plunger moves down, it forces the arm and pad outward against the inner surface of the tape reel, locking it in place.

Figure 7. Tape hub locking assembly with geometric feature tolerances

The design requirement for the tape reel assembly is to have adequate interference between the pad and the tape reel. Then, the critical feature is the magnitude of the variation on dimension r when the tolerances of the components including geometric feature variations are considered.

Table 3 and table 4 listed the basic dimensions and their tolerances, and geometric feature tolerances respectively.

Table 3. Dimensional data of the tape hub locking mechanism
Part Name Transformation Nominal Dim Tolerance(±) Variation
Height I of base Rotation 90°    
Translation k 0.398 0.006 Independent
Width of base Rotation -90°    
Translation a 0.355 0.005 Independent
Length of plunger Rotation    
Translation b 1.000 0.01 Independent
Contact distance Rotation 75° 0.5° Independent
Translation c 0.3194 ? Kinematic
Radius of arm Rotation -90°    
Translation d 0.06 0.002 Independent
Width of arm Rotation 15° ? Kinematic
Translation e 0.309 0.003 Independent
Thickness of pad Rotation    
Translation f 0.05 0.002 Independent
Height of arm Rotation -90°    
Translation g 0.488 0.004 Independent
Position of pad Rotation -90°    
Translation r 1.854626 ? Kinematic
Height II of base Rotation 90°    
Translation h 0.203 0.002 Independent

Table 4. Geometric feature tolerance data of the tape hub locking mechanism
Name Joint type Feature Tolerance band Character length
a1 Cylinder slider Profile of arm corner Rad. 0.010 N/A
a2 Planar Flatness of arm 0.001 0.369
a3 Planar Flatness of base 0.001 0.369
a4 Planar Perpendicularity of arm 0.001 0.369

The distributions for all the manufactured dimensions, including the geometric feature tolerances, are assumed to be Normal for this example. Since dimension r has great influence on the performance of this tape hub locking mechanism, its variation must be limited within a given range, such as 0.015. The following table lists the result of McCATS for the dimension r of the tap hub locking mechanism and linearized solution from CATS, and the * sign indicates geometric feature tolerances included.

Table 5 Results of tape hub locking assembly by McCATS and DLM

Parameter Name McCats* McCats DLM* DLM
Sample Size 10,000 10,000 10,000 10,000
Mean 1.854536 1.854563 1.854626 1.854526
Variations 0.013611 0.012351 0.013595 0.012435
Upper/lower rejects 38/56 18/16 40/40 19/19
Skewness/Kurtosis -0.0373/3.0689 0.0136/3.0403 0.0000/3.0000 0.0000/3.0000

8. Conclusions

A new tool, McCATS, for nonlinear tolerance analysis of mechanical assemblies with vector-loop-based models using Monte Carlo simulations has been developed. McCATS has the following main features:

  1. 1-D, 2-D and 3-D simulations,
  2. nonlinear assembly analysis,
  3. overdetermined assembly systems,
  4. closed and open loop models,
  5. single and multiple loop constraints,
  6. normal, uniform and lambda distributions, and
  7. dimensional, geometrical feature and kinematic variations.

Compared to the traditional Monte Carlo simulation for assembly variation simulation, McCATS does not require an explicit function describing the assembly kinematic constraint. This is significant since finding such an explicit function places a heavy burden on design engineers. Besides, McCATS uses the same vector-loop-based assembly tolerance model as the DLM using CATS, that means when the model is generated and a neutral file is created, very little user intervention is needed to do the assembly variation simulation.


Chase, K. W., and Parkinson, A.R., 1991, "A Survey of Research in the Application of Tolerance Analysis to the Design of Mechanical Assemblies," Research in Engineering Design, v 3, pp.23-37.

Chase, K. W., Gao, J. and Magleby, S. P., 1994, "A Generalized Approach for 2-D Assembly Tolerance Analysis of Mechanical Assemblies with Small Kinematic Adjustments," Submitted for publication.

Chase, K. W., Gao, J., Magleby, S. P. and Sorenson C. D., 1994, "A Generalized Approach to Include Geometric Feature Variations in Tolerance Analysis of Mechanical Assemblies," Submitted for publication.

Craig, M., 1988, "Variation by Design," Mechanical Engineering, PP.52-54, Nov. DeDoncker, D. and Spencer, A., 1987, "Assembly Tolerance Analysis with Simulation and Optimization Techniques," SAE Technical Paper Series, No 870263.

Doepker, P. E. and Nies, D., 1989, "Designing Brake Components Using Variation Simulation Modeling," Failure Prevention and Reliability -1989, ASME Publ. DE-Vol. 16, pp.131-138.

Early, R. and Thompson, J., 1989, "Variation Simulation Modeling-Variation Analysis Using Monte Carlo Simulation," Failure Prevention and Reliability -1989, ASME Publ. DE-Vol. 16, pp.139-144.

Fletcher, R., 1980, "Practical Methods of Optimization Vol. 1," John Wiley & Sons

Fuscaldo, J. P., 1991, "Optimizing Collet Chuck Designs Using Variation Simulation Analysis," SAE Technical Paper Series, No. 911639, Aug.

Gao, J., Chase, K. W. and Magleby, S. P., 1994, "A Generalized Approach for 3-D Assembly Tolerance Analysis of Mechanical Assemblies with Small Kinematic Adjustments," Submitted for publication.

Greenwood, W. H., 1987, "A New Tolerance Analysis Method for Designers and Manufacturers," Dissertation, Mechanical Engineering Department, Brigham Young University.

Hahn, G. J. and Shapiro, S. S., 1967, "Statistical Models in Engineering," John Wiley & Sons.

Larsen, D. V., 1989, "An efficient Method for Iterative Tolerance Design Using Monte Carlo Simulation," M.S. Thesis, Mechanical Engineering department, Brigham Young University, Jan.

Lehtihet, E. A. and Dindelli, B. A., 1989, "TOLCON: Microcoputer-Based Module for Simulation of Tolerances," Manufacturing Review, vol 2, no 3, pp.179-188.

Press, W. H., Flanney, B. P., Teukoslky, S. A. and Vetterling, W. T., 1986, "Numerical Recipes," Cambridge University Press, New York.

Sandor, G. N. and Erdman, A. G., 1984, "Advanced Mechanism Design: Analysis and Synthesis, Volume 2," Prentice-Hall, INC.

Shapiro, S. S. and Gross, A., 1981, "Ibid," pp. 178-194.

Shigley, J. E., 1969, "Kinematic Analysis of Mechanisms," McGraw-Hill Book Company, New York.

Sitko, A. G., 1991, "Applying Variation Simulation Analysis to 2-D Problems," SAE Technical Paper Series, No. 910210, Feb.

Uicker, J. J., Jr., 1969, "Dynamic Behavior of Spatial Linkages-1. Exact Equation of Motion," Journal of Engineering for Industry, 91B, pp.251-265.

Uicker, J. J., Jr., 1967, "Dynamic Force Analysis of Spatial Linkages" Journal of Applied Mechanics, 98E, pp.418-424.

Uicker, J. J., Jr., Denavit, J., and Hartenberg, R. S., 1964, "An Iterative Method for the Displacement Analysis of Spatial Mechanism," Journal of Applied Mechanics, 86, No.2, pp.309-314.

Table of Contents

1. Introduction

Assembly Tolerance Analysis Methods
Traditional Monte Carlo Simulation
Limitations of Traditional Monte Carlo Simulation
The Direct Linearization Method
New Monte Carlo Simulation
Outline for the Rest of the Paper

2. Random Number Generator

Input Data

3. 2-D Assembly Tolerance Simulation
4. 3-D Assembly Tolerance Simulation
5. Overdetermined Nonlinear Assembly Systems
6. Evaluating the Results of a Simulation

6.1 Statistical Data
6.2 Graphical Output
6.3 Assembly Rejects

7. Case Study
8. Conclusions


The ADCATS site: Home | ADCATS Info | Search | Site Map | Bulletin Board | Reports & Publications | Bibliography | Contact Us

original report by Jinsong Gao, Spencer P. Magleby, & Kenneth W. Chase