{'fraction_non_alphanumeric': 0.037275382406811546, 'fraction_numerical': 0.016137814959655463, 'mean_word_length': 4.341485986250661, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 23, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Screw Theory Approach to Computing the Instantaneous Rotation Centers of Indeterminate Planar Linkages

equally to this work. Abstract: This paper presents a screw theory approach for the computation of the instantaneous rotation centers of indeterminate planar linkages. Since the end of the 19th century, the determination of the instantaneous rotation, or velocity centers of planar mechanisms has been an important topic in kinematics that has led to the well-known Aronhold–Kennedy theorem. At the beginning of the 20th century, it was found that there were planar mechanisms for which the application of the Aronhold–Kennedy theorem was unable to ﬁnd all the instantaneous rotation centers (IRCs). These mechanisms were denominated complex or indeterminate. The beginning of this century saw a renewed interest in complex or indeterminate planar mechanisms. In this contribution, a new and simpler screw theory approach for the determination of indeterminate rotation centers of planar linkages is presented. The new approach provides a simpler method for setting up the equations. Furthermore, the algebraic equations to be solved are simpler than the ones published to date. The method is based on the systematic application of screw theory, isomorphic to the Lie algebra, se ( 3 ) , of the Euclidean group, SE ( 3 ) , and the invariant symmetric bilinear forms deﬁned on se ( 3 ) .


Introduction
The instantaneous rotation center (IRC) of two links in a one-DOF planar linkage is defined as a pair of coincident points that belong to each body and have the same velocity, with respect to another reference frame. Therefore, the relative motion between the two links is a rotation around an axis perpendicular to the plane of motion passing through the coincident points. Some IRCs can be easily determined by inspection. These IRCs are defined as primary. For example, each revolute pair constitutes the IRC of the two links that the revolute pair connects. If the IRC is not primary, then it is defined as secondary.
The Aronhold-Kennedy theorem was independently formulated by Aronhold [1], in Germany, and Kennedy [2], in England, in the second part of the 19th century. The Aronhold-Kennedy theorem is the main tool for determining secondary IRCs. The theorem indicates that the location of the IRCs associated with the relative movements of three arbitrary rigid bodies on the plane must be collinear. The great majority of planar linkages allow for the locating of all the IRCs of planar linkages using the Aronhold-Kennedy theorem. Therefore, for many decades, this theorem provided an efficient graphical method for the kinematic analysis of planar linkages; see Shigley and Uicker [3].
Nevertheless, since 1915, Klein [4] showed the existence of planar linkages for which the application of the Aronhold-Kennedy theorem was insufficient to determine the IRCs. These planar linkages were called complex planar linkages and, later, indeterminate planar linkages. Klein [4] proposed a graphical trial and error method for locating those IRCs that resisted the application of the Aronhold-Kennedy theorem.

1.
The method requires a reduced set of equations. It will be shown that the development of the complete graph of the IRCs of the linkage, as proposed by Kung and Wang [14], is unnecessary. More specifically, by properly selecting a pair of sub-graphs of the complete graph, the determination of all secondary IRCs can be readily obtained; 2.
The required equations are simpler. The method presented by Di Gregorio [13] requires the solution of a nonlinear set of 10 equations, in one case, and a nonlinear set of 12 equations, in another case. The method presented by Kung and Wang [14] requires first the solution of a quadratic equation and, later, the solution of a quartic equation. The method presented in this contribution only requires the solution and comparison of 2 quadratic equations in one case, and a quadratic and a cubic equation in the other.
The rest of the contribution is revised in this paragraph. Section 2 presents the fundamental equation of the Aronhold-Kennedy theorem and the symmetric bilinear forms defined on, se(3), the Lie algebra of the special Euclidean group, SE(3), namely, the Killing and the Klein forms. The purpose of this section is two-fold. On the one hand, it shows that the application of the algebraic structure of the Lie algebra, se(3), provides a unifying approach for the determination of the instantaneous screw axes of any spatial linkage; on the other hand, it shows that for planar linkages, the approach is reduced to the application of the Klein form to screws perpendicular to the plane motion-i.e., the classical Aronhold-Kennedy theorem. The importance of the Killing form has been obscured due to the history of kinematics, which for many decades was reduced to planar kinematics exclusively. Section 3 presents the complete approach for an eight-bar, partially indeterminate planar linkage. Section 4 solves an eight-bar, completely indeterminate planar linkage. Section 5 provides constructive proof for the validity of the method for all indeterminate linkages. Finally, some conclusions are drawn in Section 6. This paper contains a small Appendix A, which shows how to represent a secondary IRC as a linear combination of two primary IRCs.

The Fundamental Equation for the General Aronhold-Kennedy Theorem
This section starts with a definition of the velocity state of a body with respect to another body. Definition 1. Let j and m be a pair of different rigid bodies or reference frames, and let O be a point fixed in body m. The velocity state of body m with respect to body j is defined as where j ω m is the angular velocity of body m with respect to body j, and j v m O is the velocity of a point O, fixed to the rigid body m as observed from the rigid body j. Ball [19] defined j V m O as a twist on a screw. Proposition 1. Let j, k, and m, be three different bodies or reference frames, see Figure 1, and let j V k O , j V m O , and k V m O be their corresponding velocity states, as given by Definition 1. Then: It is important to note that Equation (2) is valid whether the bodies are connected via kinematic pairs or are unconnected. This result is presented in Rico et al. [20], but it is quite likely that it was well known from the beginning of the last century, and that Ball [19] was aware of its meaning, despite not using the vector notation.
In the Lie algebra se(3) of the Euclidean group SE(3), two invariant symmetrical bilinear forms can be defined.

Definition 2.
Consider the Lie algebra, se (3), of the Euclidean group, SE(3). Then, it is possible to define a bilinear symmetric form, denoted as the Killing form for any screws V O1 , V O2 ∈ se(3), as follows: where "·" is the scalar product of three-dimensional vector algebra.

Definition 3.
Consider the Lie algebra, se (3), of the Euclidean group, SE(3). Then, it is possible to define a bilinear symmetric form, denoted as the Klein form, for any screws V O1 , V O2 ∈ se(3), as follows: where "·" is the scalar product of three-dimensional vector algebra. This symmetric bilinear form is also called the reciprocal product of the screws.
It can be proved that both symmetrical bilinear forms, Killing and Klein, are well defined or invariant, i.e., the result is independent of the point O used to determine the velocity state or the selection of the coordinate system; see, for example, Brand [21], although the reader is cautioned that Brand used the "motor" terminology for screws. Moreover, it can be proved that the Klein form is a nonsingular indefinite symmetric bilinear form on se(3), while the Killing form is a singular positive semi-definite symmetric bilinear form on se(3) (Rico and Duffy [22]).
Finally, given a screw $, any screw $ a that satisfies Ki($, $ a ) = 0 is called an orthogonal annihilator, regarding the Killing form of the original screw $. It should be noted that, if Ki($, $ a ) = 0, the direction of the axes of the screws are perpendicular. Similarly, any screw $ a that satisfies Kl($, $ a ) = 0 is called an orthogonal annihilator, regarding the Klein form of the original screw $; frequently, the screw $ a , in this latter case, is also called the reciprocal screw of the original screw $.
Symbolically, Equation (2) can be written as: where the infinitesimal screw, let us say, j $ m , is given by: with j u m being a corresponding unit vector in the direction of the screw axis, j r m is the position vector of a point along the screw axis, about the origin of the coordinate system, j h m is the pitch of the screw, and "×" is the vector product of three-dimensional vector algebra. The determination of an instantaneous screw axis, for example, j $ m , requires the orthogonal annihilators, regarding the Klein and Killing forms, of the subspace of se (3) generated by { j $ k , k $ m }, denoted also as j $ k , k $ m . (This notation should not be confused with the Lie product, which in this contribution does not play any role.) Therefore, we will look for those screws $ ajm that: are orthogonal concerning the Klein form (also called reciprocal): 2. are orthogonal regarding the Killing form (also called perpendicular): Therefore, for the Klein and Killing forms, one has: and Summarizing, one may conclude that the orthogonal annihilators of the subspace generated for { j $ k , k $ m } annihilate also the screw j $ m associated with the instantaneous screw axis of the relative movement between links j and m. These two Equations (7) and (8), are the fundamental equations of the Aronhold-Kennedy theorem for general spatial linkages.

The Simplification for Planar Linkages
It is important to note that the role of the Klein and Killing forms can be drastically simplified if the linkages to be analyzed are planar. Without loss of generality, it will be assumed that the common plane of motion is perpendicular to the Z-axis. In planar linkages, kinematic pairs can be revolute or prismatic joints. The axes of the revolute pairs are all parallel to the Z-axis, while the directions of prismatic pairs must be perpendicular to the Z-axis; therefore, the screws representing revolute and prismatic pairs, Equation (4), can be, respectively, reduced as: , and n $ r = 0 n u r , where n u r · k = 0.
Without loss of generality, it can be assumed that k · j r m = 0, for any j r m , i.e., j r m and k, are perpendicular.
It follows that, for planar linkages, the corresponding Lie algebra is not se(3), but the subalgebra g k is also denominated se (2). This is the Lie subalgebra associated with the planar displacement subgroup, G k ; it is also called the planar subgroup. Furthermore, g k continues to be an orthogonal space under the restrictions of the Klein and Killing forms to g k itself. However, the restricted Klein and Killing forms, in g k , have properties that are different from those in se(3).
The Killing form for any pair of screws, j $ m and n $ r , associated with the revolute pairs of any planar linkage, becomes If one of the screws, namely, j $ m , represents a prismatic pair, it follows that: In the language of orthogonal spaces, the restriction of the Killing form to the subalgebra g k becomes a singular symmetric bilinear form.
Similarly, the Klein form for any pair of screws, j $ m and n $ r , associated with the revolute pairs of any planar linkage, becomes: for any j $ m , n $ r ∈ g k . This result is consistent with a well-known result in screw theory that states that any pair of parallel 0-pitch screws are reciprocal, i.e., they are orthogonal regarding the Klein form.
If one of the screws, namely, j $ m , represents a prismatic pair, it follows that: Thus, the restriction of the Klein form to the subalgebra g k becomes also a lsingular symmetric bilinear form.

Application of the Killing and Klein Forms to Planar Linkages
This section shows the detailed process to obtain the equations that allow determining the secondary centers using the Aronhold-Kennedy theorem, as it was outlined in Equations (7) and (8).
Consider a pair of screws associated with a revolute joint and a prismatic joint of a planar linkage, as shown in Equation (9), repeated here: As indicated previously, without loss of generality, it will be assumed that the common plane of displacements is perpendicular to the Z-axis. Therefore, the axes of the revolute pairs are all parallel to the Z-axis, while the directions of the prismatic pairs must be perpendicular to the Z-axis. Additionally, without loss of generality, it can be assumed that k · j r m = 0, namely, j r m and k, are perpendicular. Moreover, the vector j r m provides the location of the instantaneous rotation, or velocity center represented by j $ m . The process must consider two cases.
First Case. The two kinematic pairs are revolute joints. Consider a subspace of g k , given by j $ m , n $ r , where: be an orthogonal annihilator of the subspace j $ m , n $ r regarding both the Killing and Klein forms. Then: 1. applying the Killing form, it follows that: Therefore, u and k must be perpendicular. Hence, u must be of the form u = u x i + u y j and, without loss of generality, it will be assumed that r a = r ax i + r ay j. Therefore, $ a , the orthogonal annihilator of the subspace j $ m , n $ r regarding the Killing form, is given by: 2. applying the Klein form, it follows that: Using the identities of the scalar triple product on Equations (14) and (15), one obtains: and 0 = u · ( n r r × k) + k · (r a × u) = k · (u × n r r ) + u · (k × r a ) = n r r · (k × u) + r a · (u × k) = ( n r r − r a ) · (k × u) (17) Denoting, by k × u = u ⊥ , a unit vector perpendicular to both u and k, and therefore in the X-Y plane, Equations (16) and (17) can be written as: Equation (18) indicates that j r m − n r r is perpendicular to u ⊥ . Since u and u ⊥ must lie in the X-Y plane; then: Therefore, j r m − n r r must be parallel to u; consequently: Equations (15), (16) and (19) indicate that the orthogonal annihilator $ a must lay in the X-Y plane and intersect with both j $ m and n $ r . Hence, the following proposition has been proved: Proposition 2. Let j $ m and n $ r be the screws representing a pair of revolute pairs whose common direction is the Z-axis, and let j r m and n r r be the position vectors of two points in the X-Y plane along the corresponding screw axis. Then, the orthogonal annihilator $ a must lie in the X-Y plane, and it must pass through j r m and n r r .
Second Case. One kinematic pair is a revolute joint, the other is a prismatic joint. Consider a subspace of g k , given by j $ m , n $ r : and n $ r = 0 n u r where n u r lies on the X-Y plane. Let $ a = u r a × u be an orthogonal annihilator of the subspace j $ m , n $ r regarding both the Killing and Klein forms. Then: 1. applying the Killing form, it follows that: Therefore, u and k must be perpendicular. Hence, u must be of the form u = u x i + u y j and, without loss of generality, it will be assumed that r a = r ax i + r ay j. Therefore, $ a , the orthogonal annihilator of the subspace j $ m , n $ r regarding the Killing form, is given by: 2. applying the Klein form, it follows that: Using the identities of the scalar triple product on Equation (20), it yields: Denoting, by k × u = u ⊥ , a unit vector perpendicular to both u and k, and therefore in the X-Y plane, Equation (21) can be written as: Equation (22) indicates that j r m − r a is perpendicular to u ⊥ . Since u and u ⊥ must lie in the X-Y plane, then: Therefore, j r m − r a must be parallel to u; consequently: and Therefore, u must be perpendicular to n u r . These two last results provide proof of the following proposition. Proposition 3. Let j $ m and n $ r be the screws representing a revolute pair and a prismatic pair, respectively. The direction of the revolute pair is parallel to the Z-axis and j r m locates a point in the X-Y plane lying on the revolute axis. Let n u r be the direction of the prismatic pair on the X-Y plane. Then, the orthogonal annihilator $ a must lie on the X-Y plane, pass through the point given by j r m , and be perpendicular to the unit vector n u r .
These two last propositions provide graphical techniques used for finding secondary centers of rotation, in planar linkages, using the Aronhold-Kennedy theorem. It should be noted that the orthogonal annihilators are precisely the lines that, in the planar case, must be intersected to find the secondary IRCs. Propositions 2 and 3 are the working tools of the Aronhold-Kennedy theorem. It is important to note that even recent papers wrongly indicate the foundations of the generalization of the Aronhold-Kennedy theorem to the spherical and spatial cases, called the Three-Axes Theorem. Zhang et al. [23] indicate "...Sugimoto and Duffy firstly obtained the IS of planar 4R and spatial RCCC mechanisms by the reciprocal screw theory. Aronhold-Kennedy Theorem is an effective geometrical method computing the IS of planar mechanism and was generalized to the spatial case using the reciprocal screw theory...". There is no reference to the important role played by the Killing form, for example, in spherical linkages, where the reciprocal product or Klein form is useless.

First Case Study: A "Single Flyer" Eight-Bar Linkage
Consider the planar linkage shown in Figure 2. The linkage is known as the eight-bar "single flyer" mechanism. This linkage was proposed by Klein [4], who determined the secondary IRCs using a trial-and-error method. Foster and Pennock [12] determined the secondary IRCs by applying a graphical method. Di Gregorio [13] computed the secondary IRCs using an analytical method that combined the closure equation of the linkage and the unknown locations of the centers. This linkage had eight links, three of them ternary and the remaining links binary. The linkage is a trivial one, and it can be proven that its mobility is 1. The first step in the process is to obtain the screws associated with the linkage's kinematic pairs with respect to the origin of the coordinate system, O. To that end, the common direction of all revolute pairs, u, is required, given by: and by the position vectors of points located along the revolute axes, with respect to the origin, O. They are given in terms of an arbitrary unit of length, by: From these data, the screws associated with the kinematic pairs, with respect to the origin of the coordinate system, O, are given by: It must be noted that, due to space considerations, only the non-zero terms are shown separated by a semicolon to indicate the different units.

Equations for the Location of Secondary IRCs
Regarding Figure 2, the primary IRCs are: The upper triangular arrangement in Table 1 indicates the primary centers of the linkage with the number −1 and the secondary centers with the number −2.
The linkage is denominated as partially undetermined because the direct application of the Aronhold-Kennedy theorem allows determining two secondary IRCs. Throughout this paper, whenever a sequence for determining an IRC is presented, the primary and secondary IRCs will be enclosed in boxes and circles, respectively. From Table 1, it follows that O 31 can be found using links 2 and 4.
The equations that determine the secondary center, and therefore, the screw characteristics, are: and  (25) and (26), and applying the Aronhold-Kennedy theorem with the Klein form, the equations necessary to determine the location of the secondary center O 31 are given by: The vector expression Eqij k indicates that it was obtained while finding the center ij and using link k as a third link. The expression is implicitly equated to the vector 0 to form a vector equation; however, only the second component is different from zero. Hence, only one scalar equation is obtained. From Equations (27) and (28), one obtains: Equations (29) and (30) form a linear system of two equations in two unknowns, the coordinates x 31 and y 31 associated with the secondary center O 31 . Solving the linear system, the position vector r 31 and the infinitesimal screw associated with the secondary center O 31 are given by: Similarly, the secondary center O 42 can be found by using links 1 and 3, Table 1.
Following a similar process as in the secondary center O 31 , the position vector and the screw associated with the secondary center O 42 , are found as: There is no other additional secondary IRC that can be determined by the direct application of the Aronhold-Kennedy theorem. The IRCs O 31 and O 42 will also be marked with the number −1. Moreover, they will be regarded as primary centers for all purposes. Further, the upper triangular array of the IRCs, after this step, is given in Table 2.
The flow chart of the algorithm proposed for solving indeterminate linkages is presented in Figure 3. The computation of the undetermined IRCs starts at step 4. The first 3 steps are simple and they do not require additional explanation.

1.
Initially mark all the centers with a -2. Identify all primary centers and change the mark from -2 to -1

Using Aronhold-Kennedy theorem determine all possible secondary centers
The linkage is determined. Exhibit the IRCs All the IRCs were determined?

End
3. The linkage is indetermined. The secondary IRCs found will be regarded as primary and marked with a -1

4.
All secondary centers that can be computed as linear combinations of two primary centers are identified. Choose one of these centers and assume it is known. Change its mark from -2 to 0. Set the counter to k=1

5.1.
Determine all the secondary centers that can be located by using the Aronhold-Kennedy theorem using the IRC marked with -1, and 0. The secondary centers obtained in this step will change their mark from -2 to 1

Repeat
Step 5.1 with the IRC marked with -1, 0, and 1. The secondary centers obtained in this step will change their mark from -2 to 2 5.3. Repeat Steps 5.1 and 5.2 using all the IRCs obtained so far and changing the mark of the newly found IRCs from -2 adding to the maximum previous value the number 1. The process ends when an overconstrained IRC is found; i.e., an IRC that can be found by three or more pair combinations that yield independent equations. The location of these overconstrained IRC yields a quadratic or cubic equation in λ. The roots determine the possible locations of the overconstrained IRC and all the unknown IRC needed in the process while k ≤ 2 do Step 4. Choose a secondary center, i $ j , whose location can be written as a linear combination of the position of two primary centers, namely, those marked with the number −1. Appendix A shows the procedure to accomplish this task; the secondary center can be written in terms of only one variable, denoted λ or λ * . From a theoretical point of view, any such center can be employed. However, it is convenient to choose secondary centers that yield a minimum number of equations. The marking of this secondary center will change from −2 to 0, and it will be assumed that its location is known. Set the counter k = 1.
Step 5.1. Determine all the secondary centers that can be located by the Aronhold-Kennedy theorem using the centers marked with −1 and 0, namely, the center chosen in step 1. The secondary centers obtained in this step will change their mark from −2 to 1.
Step 5.2. Repeat Step 5.1, but now, it is necessary to locate all the secondary centers that can be determined, by using the Aronhold-Kennedy theorem, on the IRCs marked with the numbers −1, 0, and 1. The IRCs obtained in this step will change their mark from −2 to 2.
Step 5.3. Repeat Step 5.2 using all the secondary centers obtained so far and changing the mark of the newly found IRCs, adding to the maximum previous value the number 1.
The process finishes when an overconstrained center is found, namely, a rotation center that can be determined by using more than two pairs of already-known IRCs that yield independent equations. Simplifying the resulting system of equations yields a quadratic or cubic equation in λ. The roots of the equation determine the possible locations of the secondary center.
Step 6. Set the counter k = 2. Steps 5.1 to 5.3 must be repeated with a new secondary center that can be expressed as a linear combination of two primary centers. The process eventually yields an overconstrained secondary center, whose location can be obtained through a system of equations that yields a quadratic or cubic equation in λ * . The roots of the equation determine the possible locations of the secondary center.
Step 7. The correct location of the secondary center, obtained through the values of λ and λ * , is determined by choosing the location of a secondary center common to the two processes outlined in the two previous paragraphs. In the process, the location of many other secondary IRCs, usually all, are also found.
The proposed algorithm is used in the rest of the paper.

Determination and Solution of the System of Equations
The objective of this analysis is to determine the position vectors, in the plane z = 0, of a point along the rotation axes of the relative movements associated with the secondary centers shown in  Table 3 shows only the secondary centers used in the process. Table 3. Secondary centers whose location can be written as a linear combination of the location of two primary centers.  Table 3, the secondary center O 62 is chosen. This center can be written as: The upper triangular arrangement of centers, after this point, is given by: From this selection, it is possible to find the secondary centers. (The text shows only the required centers. However, the subsequent upper triangular arrangements show all centers that can be found. This convention will be followed in the rest of the contribution.) O 82 and O 64 are indicated, from now on, in blue color and dashed lines.
After identifying the secondary centers O 82 and O 64 with the number 1, the upper triangular arrangement of the IRCs is given by: The next step is to employ all the centers found so far to find all additional secondary centers. Therefore, After identifying the overconstrained secondary center, indicated from now on in red color and dotted lines, O 84 , with the number 2, the final upper triangular arrangement of IRCs is given by: The solution for x 84 , from Equation (53), is substituted into Equation (51) to solve x 82 also in terms of x 64 , so that: This result for x 82 , from Equation (54), is substituted into Equation (49) to obtain a solution for x 64 in terms of λ. Therefore,

Selection of a Second Arbitrary Center and Determination of an Overconstrained Center
The procedure must be repeated for another secondary center. From Table 3, the secondary center O 72 is chosen. The location of this center can be written as: The upper triangular arrangement of centers becomes: Using the centers found up to this point, it is possible to find the following secondary centers: After identifying the secondary centers O 82 and O 73 with the number 1, the upper diagonal arrangement becomes: The final step requires employing all the secondary centers found so far to find additional secondary centers, in particular, an overconstrained secondary center. Therefore, After identifying the overconstrained secondary center O 83 with the number 2, the final upper triangular arrangement of centers becomes: The equations are obtained by applying systematically the Aronhold-Kennedy theorem together with the Klein form. It should be noted that these expressions are equated to the vector 0, generating four scalar equations, only one of which is non-trivial. Due to space considerations, only the non-zero component is shown.
From Equations (62)-(68), a final set of equations is obtained: From Equation (80), x 83 is solved in terms of x 73 , to obtain: The solution for x 83 , obtained from Equation (81), is substituted into Equation (79) to solve x 73 in terms of x 82 , thus obtaining: The result for x 73 , obtained from Equation (82), is substituted into Equation (78) to solve x 82 in terms of λ * : Finally, the solution for x 82 , obtained from Equation (83), is substituted into Equation (77) to obtain a quadratic equation in λ * : After clearing the denominator, the possible solutions of the quadratic Equation (84) are given by: The two roots of Equation (85) Summarizing, in the first process, the secondary IRC O 62 is assumed to be known, and the overconstrained rotation center is O 84 . In the second process, the secondary IRC O 72 is assumed to be known, and the overconstrained rotation center is O 83 . The subgraphs of the secondary rotation centers needed to accomplish this task is shown in Figure 4. The determination of the remaining infinitesimal screw representing the secondary IRCs is straightforward and, due to space considerations, is not presented here.
The location of the secondary IRCs, obtained from the position vectors, is shown in Figure 5. Therein, one can observe that the three centers associated with three relative movements, namely, i $ k , i $ j , and j $ k , between three arbitrary links lie on a straight line, according to the Aronhold-Kennedy theorem.

Second Case Study: Eight-Bar "Double-Butterfly" Planar Linkage
Consider the linkage shown in Figure 6, which is known as a "double-butterfly" eightbar undetermined planar linkage. The linkage was proposed by Klein [4], who determined the secondary centers by using a trial-and-error method. Foster and Pennock [12] determined the secondary centers using a graphical method. Di Gregorio [13] determined the secondary centers by developing an algebraic method that combines the closure equations and the location of the secondary centers. This linkage has eight links, four of them ternary, and the remaining four binary, and it has ten revolutes. The linkage is trivial, and its mobility is 1. The first step in the process is to obtain the screws associated with the linkage's kinematic pairs about the origin of the coordinate system, O. To that end, the common direction of all revolute pairs, u, is required, given by: From this data, the screws associated with the kinematic pairs, about the origin of the coordinate system, O, are given by:

Determination of the Secondary Rotation Axes
From the enumeration of the links shown in Figure 6, the primary IRCs, namely, those that can be determined by inspection of the linkage, are: The upper diagonal arrangement of IRCs, where the primary centers are marked with the number −1, and the secondary centers are marked with the number −2, are shown in Table 4.
This linkage is completely undetermined since no secondary center can be found by the direct application of the Aronhold-Kennedy theorem. The search for these secondary IRCs will require two steps. In the first step, an arbitrary secondary center is chosen and the location of an overconstrained secondary center is determined up to the two possible roots of a quadratic equation. In the second step, another arbitrary secondary center is chosen and the location of the same overconstrained secondary center is determined up to the two possible roots of a quadratic equation. The comparison between the solutions of the two quadratic roots yields the correct solution and, from the intermediate results, the location of many other secondary centers will be accomplished. Therefore, Table 5 shows the secondary centers, which can be written as a linear combination of two primary centers employing a single variable λ, and which are used in this example.  Table 5, the secondary center O 51 is chosen. This center can be written as: Thus, the upper triangular arrangement of IRC becomes: Therefore, following the approach indicated in Section 3.1, the application of the Aronhold-Kennedy theorem renders the location of the IRCs O 61 , O 52 After marking the secondary IRCs O 61 and O 52 with the number 1, the upper triangular arrangement of the IRCs becomes: In the next step, all the IRCs found so far will be employed to find additional centers. In this case, the overconstrained center O 62 is found.
After marking the overconstrained IRC O 62 with the number 2, the upper triangular arrangement of the IRC is given by: From Equation (90), the position vector associated with the secondary IRC O 51 is: Furthermore, the position vectors associated with the involved IRC are: The necessary equations to solve the problem are obtained by systematically applying the Aronhold-Kennedy theorem employing the Klein form, Equations (25) and (26). It should be noted that these expressions are equated to the vector 0, generating four scalar equations, of which only one is non-trivial. Due to space considerations, only the non-zero component is shown.
The result for x 62 , obtained from Equation (111), is substituted into Equation (109) to solve x 52 in terms of x 61 , so that: Similarly, the result for x 52 of Equation (112) is substituted into Equation (108) to solve x 61 in terms of λ, therefore: Finally, the result for x 61 , from Equation (113), is substituted into Equation (107) to obtain a quadratic equation in λ, given by: After clearing the denominator, the two solutions of λ are given by: The process must be repeated with another secondary center. From Table 5, the center O 74 is chosen, and its position vector can be written as: The upper triangular array of IRCs, with the center O 74 marked with the number 0, is given by: Using this secondary center O 74 , the secondary centers O 41 and O 72 can be found: After identifying the secondary centers O 41 and O 72 with the number 1, the upper triangular arrangement of centers becomes: The next step employs all the centers found so far to find additional centers. The relevant ones are: After this step, the upper triangular arrangement of centers becomes: The following step employs all the IRCs marked with the numbers −1, 0, 1, and 2 to find additional IRCs; the relevant ones are: Marking the newly found IRCs with the number 3, the upper triangular arrangement of centers becomes: The final step is to find an overconstrained IRC. In this case, the IRC O 31 can be found using the following three IRC combinations: The position vectors of the secondary centers found in this process are: The equations required to solve the problem are obtained applying the Aronhold-Kennedy theorem and using systematically the Klein form, Equations (25) and (26). It should be noted that these expressions are equated to the vector 0, generating four scalar equations, of which only one is non-trivial. Due to space considerations, only the non-zero component is shown.
Eq31 5 = −x 31 y 51 + x 51 y 31 + 290 x 31 − 290 x 51 + 80 y 31 − 80 y 51 = 0, The result for x 61 is substituted into Equation (136), to obtain: Solving Equation (145) for x 51 , it follows that: The value of x 61 , from Equation (143), is also substituted into Equation (137). The result is given by: The resulting equation, (147), is solved for x 62 in terms of λ * ; hence: In the next step, x 72 is solved from Equation (140), and the result is given by: The value of x 72 is substituted into Equation (138). Furthermore, solving the resulting equation for x 62 , one obtains: Repeating the process by substituting the value of x 62 into (139), and then solving for x 63 , it follows that: Before the final substitutions, the value of x 51 is substituted into (141) to obtain: Then, solving for x 31 a solution in terms of λ * is given by: Similarly, the value of x 61 is substituted into Equation (131) to obtain: where c 1 = 61961537269 c 2 = 1950521392700 c 3 = 155729090462 c 4 = 3519109121000 c 5 = 59668631869 c 6 = 1225931622300 Substituting the value of x 31 obtained in Equation (152) into Equation (153), a final cubic equation in λ * is obtained: where After clearing the denominator of (153), its solutions are given by: The location of all primary and secondary centers is shown in Figure 7. Therein, it can be illustrated that, i $ k , i $ j , and j $ k , the three centers associated with three relative movements between three arbitrary links, lie on a straight line, as indicated by the Aronhold-Kennedy theorem. Figure 8 shows the subgraphs of the secondary instantaneous centers involved in the process.

Proof of the Method
This short section presents constructive proof of the method. It should be noted that the number of IRCs is finite, and it is given by: where N is the number of IRCs, and n is the number of links in the linkage. Since both linkages have eight links, the number of IRCs is also, in both cases, twenty-eight.
• The single-butterfly linkage has nine primary centers. Two additional centers can be obtained by a straightforward application of the Hence, after the process, the users will know the location of 19 out of 28 centers.
Any person with some familiarity with the graphical techniques of the Aronhold-Kennedy theorem would recognize that, most likely, the location of the remaining IRC can be determined by the simple application of the Aronhold-Kennedy theorem. Even if this is not the case, the process can be repeated by choosing another secondary center. The location of all IRCs will be finished after a finite, usually small-no more than twoor three-steps-process. (In the examples shown in this contribution, it was possible to determine all the IRCs. There was no need to repeat the process.)

Conclusions
This paper introduced a novel and simpler method to obtain the secondary instantaneous centers of rotation of indeterminate planar linkages. The method only requires the solution and comparison of two quadratic equations or a quadratic equation and a cubic equation. They are simpler than the previous works reported in the literature. In addition, the method does not require the construction of the complete graph of the secondary IRCs, as indicated by Kung and Wang [14]. Motivated by the reviewers' comments, the authors will embark in the search of a method applicable to indeterminate linkages containing gear pairs and up to 10 links. Finally, the results were verified by carrying out the velocity analyses of the linkages involved and by simulation using Adams©. The verification is not included here due to space considerations. However all the details are included in the M.Sc. thesis of the first author [24]. Funding: Valderrama-Rodríguez was funded by CONACYT, the Mexican National Council of Science and Technology, grant number 458523, to pursue a M.Sc. degree.
Acknowledgments: The first author thanks the Mexican National Council of Science and Technology (CONACyT) for support through a scholarship, grant number 458523, to pursue an M.Sc. degree at the Universidad of Guanajuato. The authors thank CONACyT, and the Universidad of Guanajuato, for their continuous support.

Conflicts of Interest:
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

Appendix A. Secondary Rotation Axis as a Linear Combination of Two Primary Rotation Centers
This appendix shows the process of expressing a secondary rotation center as a linear combination of two primary centers.
Proposition A1. Let O jk be a secondary center that, according to the Aronhold-Kennedy theorem, is collinear with the primary centers O ij and O ik . Then, their position vectors are related by: where λ ∈ R.
Proof. Assume that O jk is a secondary center that, according to the Aronhold-Kennedy theorem, is collinear with the primary centers O ij and O ik . Then, the two possible configurations of the three centers are: Figure A1. A first configuration of the three centers. Figure A2. A second configuration of the three centers.
In both cases, the following relationship holds true: In the first configuration, Figure A1, 0 < λ < 1, whereas in the second configuration, Figure A2, λ > 1. In any case, it follows that: It can be observed that the position vector of the secondary rotation center can be written as a linear combination of the primary centers. Therefore, the location of the secondary rotation center can be expressed in terms of a unique variable λ, since r ik/O and r ij/O are known. This result finishes the proof. A procedure implemented in Maple© computes all the instantaneous secondary centers that fulfill this condition.