{"id":2146,"date":"2022-03-13T12:43:49","date_gmt":"2022-03-13T12:43:49","guid":{"rendered":"https:\/\/blog.metu.edu.tr\/eresmech\/?page_id=2146"},"modified":"2022-12-06T02:18:10","modified_gmt":"2022-12-06T02:18:10","slug":"3-9","status":"publish","type":"page","link":"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/ch3\/3-9\/","title":{"rendered":"3-9"},"content":{"rendered":"<div id=\"pl-gb2146-69d75d5914e00\"  class=\"panel-layout\" ><div id=\"pg-gb2146-69d75d5914e00-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-gb2146-69d75d5914e00-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-gb2146-69d75d5914e00-0-0-0\" class=\"so-panel widget widget_sow-editor panel-first-child panel-last-child widgetopts-SO\" data-index=\"0\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-editor so-widget-sow-editor-base\"\n\t\t\t\n\t\t>\n<div class=\"siteorigin-widget-tinymce textwidget\">\n\t<h1><b>3.9<\/b> Iterative Solution of the Loop Closure Equations<\/h1>\n<p>In the previous sections we were able to solve the loop closure stepwise or in closed form. Usually such a solution can be found if in each loop closure equation there are two unknowns. In cases where the loop closure equations are coupled i.e. there are more than two unknowns in each loop closure equation, simultaneous solution of the loop closure equations will be required, in which case a search for a stepwise or closed form solution is not practical and iterative solutions are used.<\/p>\n<p>If we look at the loop closure equations, there is a set of nonlinear algebraic equations in the form:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\">F<sub>j<\/sub>(<strong>x<\/strong>) = 0<\/td>\n<td>j = 1, 2, 3, &#8230;, n<\/td>\n<td style=\"text-align: right\">(1)<\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><strong>x<\/strong> = [x<sub>1<\/sub>\u00a0x<sub>2<\/sub>\u00a0x<sub>3<\/sub> &#8230; x<sub>n<\/sub>]<sup>T<\/sup><\/td>\n<td><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Where in mechanism analysis F<sub>k<\/sub>(<strong>x<\/strong>) are the loop equations written in complex numbers or in terms of their real and imaginary parts and\u00a0<strong>x <\/strong>is the vector formed by the position variables such as \u03b8<sub>1j<\/sub>\u00a0or s<sub>ij<\/sub>. When the set of equations and their derivatives are continuous, a simple numerical iterative method known as\u00a0<strong><em>Newton-Raphson method<\/em><\/strong>\u00a0may be used to find a solution of such an equation set. There are other more elegant numerical methods which can be used but this is beyond the topic (any textbook on numerical methods will contain a chapter on the solution of nonlinear equations).<\/p>\n<p>Let us consider a single equation F(x) = 0, that is nonlinear in the scalar variable x. Let x = x* be the solution of this equation and let x<sup>(k)<\/sup> be an approximation to x*. The Taylor series expansion of F(x) about x = x<sup>(k)<\/sup>\u00a0is:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\">F(x) = F(x<sup>(k)<\/sup>) + F<sub>x<\/sub>(x<sup>(k)<\/sup>)(x \u2212 x<sup>(k)<\/sup>) + (higjer order terms)<\/td>\n<td style=\"text-align: right\">(2)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>where F<sub>x<\/sub> \u00a0is the derivative of the function with respect to x, F<sub>x<\/sub>(x) = dF(x)\/dx.<\/p>\n<p>Let x = x<sup>(k+1)<\/sup>\u00a0be an improved approximation that is to be determined from the condition:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\">F(x<sup>(k+1)<\/sup>) \u2248\u00a0F(x<sup>(k)<\/sup>) + F<sub>x<\/sub>(x<sup>(k)<\/sup>)(x<sup>(k+1)<\/sup> \u2212 x<sup>(k)<\/sup>) = 0<\/td>\n<td style=\"text-align: right\">(3)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>If x<sup>(k+1)<\/sup> \u2212 x<sup>(k)<\/sup> is small, higher order terms can be neglected. If F<sub>x<\/sub>(x<sup>(k)<\/sup>) is not equal to zero, equation (3) can be solved for x<sup>(k+1)<\/sup>\u00a0as:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\">x<sup>(k+1)<\/sup> = x<sup>(k)<\/sup>\u00a0\u2212 F(x<sup>(k)<\/sup>)\/F<sub>x<\/sub>(x<sup>(k)<\/sup>)<\/td>\n<td style=\"text-align: right\">(4)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Equation 4 is the basis for Newton-Raphson method (this is also known as the recursive formula). Since higher order terms in Taylor series has been neglected, x<sup>(k+1)<\/sup>\u00a0will not be the exact solution. If the problem is well behaving , x<sup>(k+1)<\/sup>\u00a0will be a better approximation, and when this equation is applied repetitively, at an mth step,\u00a0 F(x<sup>(m)<\/sup>) &lt; \u03b5, where \u03b5\u00a0is a very small quantity which may be assumed to be equal to zero for the engineering application. Hence Newton-Raphson algorithm can be summarised as:<\/p>\n<ul>\n<li>Make an estimate x<sup>(0)<\/sup> for the solution of the equation F(x) = 0.<\/li>\n<li>In iterations k = 0, 1, 2, 3, &#8230;, m, evaluate F(x<sup>(k+1)<\/sup>) and if F(x<sup>(k+1)<\/sup>) &lt; \u03b5<sub>e<\/sub>\u00a0or if x<sup>(k+1)<\/sup>\u00a0\u2212 x<sup>(k)<\/sup> &lt; \u03b5<sub>s<\/sub>\u00a0, then terminate and use x<sup>(k+1)<\/sup>\u00a0as the solution of the equation (\u03b5<sub>e<\/sub>\u00a0is the equation error tolerance and\u00a0\u03b5<sub>s<\/sub>\u00a0is the solution error tolerance). If F<sub>x<\/sub>(x<sup>(k+1)<\/sup>) = 0 and F(x<sup>(k+1)<\/sup>) not equal to<span style=\"font-family: Arial, Helvetica, sans-serif\">\u00a0<\/span>0 then go to step 1 for a new estimate. Otherwise go to step 3.<\/li>\n<li>Replace k+1 in place of k and go to step 2. If the step is repeated m times and the conditions F(x<sup>(k+1)<\/sup>) &lt; \u03b5<sub>e<\/sub> or x<sup>(k+1)<\/sup>\u00a0\u2212 x<sup>(k)<\/sup> &lt; \u03b5<sub>s<\/sub>\u00a0are not satisfied, stop without a solution.<\/li>\n<\/ul>\n<p>The sequence of approximate solutions generated by Newton-Raphson algorithm, in many problems will approach a solution F(x) = 0 in a reasonable number of steps. However if x<sup>(0)<\/sup> is not adequately close to x*,\u00a0 if F(x) is not a well behaving function or if \u03b5<sub>e<\/sub>, or\u00a0\u03b5<sub>s<\/sub>\u00a0are selected very small for the problem at hand, a solution may not be obtained. In certain other cases, the solution obtained may not be the solution x* sought.<\/p>\n<p style=\"text-align: center\" align=\"center\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2148\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image008.gif\" alt=\"\" width=\"862\" height=\"550\" \/> \u00a0\u00a0 \u00a0<\/span><\/p>\n<p>The geometry of Newton-Raphson method is illustrated in the above sketches. For a normal case, the convergence is quadratic (a). In (b) shows that the method may diverge if the solution F(x) = 0 is an inflection point (i.e. the curvature changes at F(x) = 0). If there are multiple roots, the solution found will be a function of the initial estimate x<sup>(0)<\/sup> and you can not be sure whether the root found is the actual root you are looking for (c). If the initial estimate is near a local maximum or minimum (at a minimum or maximum F<sub>x<\/sub>(x) = 0), the algorithm may also fail (d)).<\/p>\n<p>Let us now expand Newton-Raphson algorithm for a set of equations. Consider n nonlinear algebraic equations in n unknowns:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\">F<sub>1<\/sub>(<strong>x<\/strong>) = F<sub>1<\/sub>(x<sub>1<\/sub>, x<sub>2<\/sub>, x<sub>3<\/sub>, &#8230;., x<sub>n<\/sub>) = 0<br \/>\nF<sub>2<\/sub>(<strong>x<\/strong>) = F<sub>2<\/sub>(x<sub>1<\/sub>, x<sub>2<\/sub>, x<sub>3<\/sub>, &#8230;, x<sub>n<\/sub>) = 0<br \/>\nF<sub>3<\/sub>(<strong>x<\/strong>) = F<sub>3<\/sub>(x<sub>1<\/sub>, x<sub>2<\/sub>, x<sub>3<\/sub>, &#8230;, x<sub>n<\/sub>) = 0<br \/>\n&#8230;&#8230;<br \/>\nF<sub>n<\/sub>(<strong>x<\/strong>) = F<sub>n<\/sub>(x<sub>1<\/sub>, x<sub>2<\/sub>, x<sub>3<\/sub>, &#8230;, x<sub>n<\/sub>) = 0<\/td>\n<td style=\"text-align: right\">(5)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>which can be written as :<\/p>\n<p style=\"text-align: center\"><strong>F<\/strong>(<strong>x<\/strong>) = <strong>0<\/strong><\/p>\n<p>where the solution <strong>x*<\/strong>\u00a0= [x*<sub>1<\/sub>,\u00a0x*<sub>2<\/sub>,\u00a0x*<sub>3<\/sub>, &#8230;,\u00a0x*<sub>n<\/sub>]<sup>T<\/sup>. A first-order Taylor series expansion about an estimate\u00a0<strong>x<sup>(k)<\/sup><\/strong> of the solution can be applied to equation (5). Neglecting higher order terms:<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>F<\/strong>(<strong>x<\/strong>) \u2248\u00a0<strong>F<\/strong>(<strong>x<\/strong><sup>(k)<\/sup>) + <strong>F<sub>x<\/sub><\/strong>(<strong>x<\/strong><sup>(k)<\/sup>)(<strong>x<\/strong> \u2212\u00a0<strong>x<\/strong><sup>(k)<\/sup>)<\/td>\n<td style=\"text-align: right\">(6)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>where <strong>F<sub>x<\/sub><\/strong>(<strong>x<\/strong><sup>(k)<\/sup>) is the Jacobian matrix evaluated at\u00a0<strong>x<\/strong><sup>(k)<\/sup>. If\u00a0 <strong>x <\/strong>=\u00a0<strong>x<\/strong><sup>(k+1)<\/sup>\u00a0is an improved approximation, it can be determined from the condition:<\/p>\n<p style=\"text-align: center\"><strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>) \u2248 <strong>F<\/strong>(<strong>x<\/strong><sup>(k)<\/sup>) + <strong>F<sub>x<\/sub><\/strong>(<strong>x<\/strong><sup>(k)<\/sup>)(<strong>x<\/strong><sup>(k+1)<\/sup>\u00a0\u2212 <strong>x<\/strong><sup>(k)<\/sup>) = <strong>0<\/strong><\/p>\n<hr align=\"left\" width=\"60%\" \/>\n<p>If the Jabobian matrix is nonsingular (it is of rank n), this equation can be solved for\u00a0<strong>x<\/strong><sup>(k+1)<\/sup>\u00a0from the equation :<\/p>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>F<\/strong><sub>x<\/sub>(<strong>x<\/strong><sup>(k)<\/sup>)D<strong>x<\/strong><sup>(k)<\/sup>= \u2212<strong>F<\/strong>(<strong>x<\/strong><sup>(k)<\/sup>)<\/td>\n<td style=\"text-align: right\">(7)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>where D<strong>x<\/strong><sup>(k)<\/sup>= <strong>x<\/strong><sup>(k+1)<\/sup>\u00a0\u2212 <strong>x<\/strong><sup><strong>(<\/strong>k)<\/sup> or <strong>x<\/strong><sup>(k+1)<\/sup>=\u00a0<strong>x<\/strong><sup>(k)<\/sup> + D<strong>x<\/strong><sup>(k)<\/sup>.<\/p>\n<p>Newton-Raphson algorithm for a system of equations will now be:<\/p>\n<ol>\n<li>Make an estimate\u00a0<strong>x<\/strong><sup>(0)<\/sup>\u00a0for the solution of the equation\u00a0<strong>F<\/strong>(<strong>x<\/strong>) = <strong>0<\/strong>.<\/li>\n<li>In iterations k= 0, 1, 2, 3, &#8230;, m,\u00a0 evaluate D<strong>x<\/strong><sup>(k)<\/sup>,\u00a0<strong>x<\/strong><sup>(k+1)<\/sup>\u00a0and\u00a0<strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>). If <strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>) &lt; <strong>\u03b5<sub>e<\/sub><\/strong>, or if <strong>x<\/strong><sup>(k+1)<\/sup>\u00a0\u2212 <strong>x<\/strong><sup>(k)<\/sup>\u00a0&lt;<strong><span style=\"font-family: Symbol\"> \u03b5<\/span><sub>s<\/sub><\/strong>, then terminate and use\u00a0<strong>x<\/strong><sup>(k+1)<\/sup>\u00a0as the solution of the equation (<strong>\u03b5<sub>e<\/sub><\/strong>\u00a0is the equation error tolerance and\u00a0<strong>\u03b5<\/strong><strong><sub>s<\/sub><\/strong>\u00a0is the solution error tolerance). If\u00a0<strong>F<sub>x<\/sub><\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>)) = <strong>0<\/strong> and\u00a0<strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>) not equal to <strong>0<\/strong> then go to step 1 for a new estimate. Otherwise go to step 3.<\/li>\n<li>Replace k+1 in place of k and go to step 2. If the step is repeated m times and the conditions\u00a0<strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>) &lt;\u00a0<strong>\u03b5<\/strong><strong><sub>e<\/sub><\/strong> or <strong>x<\/strong><sup>(k+1)<\/sup> \u2212 <strong>x<\/strong><sup>(k)<\/sup>\u00a0&lt; <strong>\u03b5<\/strong><strong><sub>s<\/sub><\/strong>\u00a0are not satisfied,\u00a0 stop without a solution.<\/li>\n<\/ol>\n<p><span style=\"color: #ff0000\"><strong>Example:<\/strong><\/span><\/p>\n<p>In order to show the application of Newton-Raphson method in mechanism analysis consider the mechanism shown. The closed form solution is not known. The loop closure equation in complex numbers yield:<\/p>\n<p style=\"text-align: center\">a<sub>2<\/sub>e<sup>i\u03b8<sub>12<\/sub><\/sup> = b<sub>1<\/sub>\u00a0\u2212 ic<sub>1<\/sub> + a<sub>5<\/sub>e<sup>i\u03b8<sub>15<\/sub><\/sup> + s<sub>4<\/sub>e<sup>i\u03b8<sub>14<\/sub><\/sup><\/p>\n<p style=\"text-align: center\">a<sub>5<\/sub>e<sup>i\u03b8<sub>15<\/sub><\/sup> + a<sub>4<\/sub>e<sup>i\u03b8<sub>14<\/sub><\/sup> = \u2212b<sub>1<\/sub> + ia<sub>1<\/sub> + s<sub>6<\/sub><\/p>\n<p>which can be written in the form:<\/p>\n<p style=\"text-align: center\">b<sub>1<\/sub>\u00a0\u2212 ic<sub>1<\/sub> \u2212 a<sub>2<\/sub>e<sup>i\u03b8<sub>12<\/sub><\/sup> + a<sub>5<\/sub>e<sup>i\u03b8<sub>15<\/sub><\/sup> + s<sub>4<\/sub>e<sup>i\u03b8<sub>14<\/sub><\/sup>\u00a0= 0<\/p>\n<p style=\"text-align: center\">b<sub>1<\/sub> \u2212 ia<sub>1<\/sub> \u2212 s<sub>6<\/sub> + a<sub>5<\/sub>e<sup>i\u03b8<sub>15<\/sub><\/sup> + a<sub>4<\/sub>e<sup>i\u03b8<sub>14<\/sub><\/sup> = 0<\/p>\n<p align=\"center\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1570\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/09\/image219-4_2.gif\" alt=\"\" width=\"337\" height=\"502\" \/><\/span><\/p>\n<p>or as scalar equations:<\/p>\n<p style=\"text-align: center\">b<sub>1 <\/sub>\u2212 a<sub>2<\/sub>cos\u03b8<sub>12\u00a0<\/sub>+ a<sub>5<\/sub>cos\u03b8<sub>15\u00a0<\/sub>+ s<sub>4<\/sub>cos\u03b8<sub>14\u00a0<\/sub>= 0<\/p>\n<p style=\"text-align: center\">\u2212c<sub>1 <\/sub>\u2212 a<sub>2<\/sub>sin\u03b8<sub>12\u00a0<\/sub>+ a<sub>5<\/sub>sin\u03b8<sub>15\u00a0<\/sub>+ s<sub>4<\/sub>sin\u03b8<sub>14\u00a0<\/sub>= 0<\/p>\n<p style=\"text-align: center\">b<sub>1 <\/sub>\u2212 s<sub>6<\/sub><sub>\u00a0<\/sub>+ a<sub>5<\/sub>cos\u03b8<sub>15\u00a0<\/sub>+ a<sub>4<\/sub>cos\u03b8<sub>14\u00a0<\/sub>= 0<\/p>\n<p style=\"text-align: center\">\u2212a<sub>1<\/sub><sub>\u00a0<\/sub>+ a<sub>5<\/sub>sin\u03b8<sub>15\u00a0<\/sub>+ a<sub>4<\/sub>sin\u03b8<sub>14\u00a0<\/sub>= 0<\/p>\n<p>which is a set of four equations in four unknowns in the form (input variable \u03b8<sub>12<\/sub>\u00a0is not considered as an unknown):<\/p>\n<p style=\"text-align: center\">F<sub>1<\/sub>(\u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>, s<sub>4<\/sub>) = 0<\/p>\n<p style=\"text-align: center\">F<sub>2<\/sub>(\u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>, s<sub>4<\/sub>) = 0<\/p>\n<p style=\"text-align: center\">F<sub>3<\/sub>(\u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>, s<sub>6<\/sub>) = 0<\/p>\n<p style=\"text-align: center\">F<sub>4<\/sub>(\u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>) = 0<\/p>\n<p>For a given value of input crank angle \u03b8<sub>12<\/sub>, we would like to solve the unknown position variables \u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>, s<sub>4<\/sub>, s<sub>6<\/sub>. If \u03b8<sub>14<\/sub><sup>0<\/sup>, \u03b8<sub>15<\/sub><sup>0<\/sup>, s<sub>4<\/sub><sup>0<\/sup>, s<sub>6<\/sub><sup>0<\/sup>, are the initial estimates to the solution, \u03b8<sub>14<\/sub><sup>1<\/sup>, \u03b8<sub>15<\/sub><sup>1<\/sup>, s<sub>4<\/sub><sup>1<\/sup>, s<sub>6<\/sub><sup>1<\/sup>\u00a0are improved approximations and <span style=\"font-family: Symbol\">d<\/span>s<sub>4<\/sub>= s<sub>4<\/sub><sup>1<\/sup> \u2212 s<sub>4<\/sub><sup>0<\/sup>,\u00a0<span style=\"font-family: Symbol\">d<\/span>s<sub>6<\/sub>= s<sub>6<\/sub><sup>1<\/sup> \u2212 s<sub>6<\/sub><sup>0<\/sup>, \u03b4\u03b8<sub>14<\/sub>= \u03b8<sub>14<\/sub><sup>1<\/sup> \u2212 \u03b8<sub>14<\/sub><sup>0<\/sup>, \u03b4\u03b8<sub>15<\/sub> = \u03b8<sub>15<\/sub><sup>1<\/sup> \u2212 \u03b8<sub>15<\/sub><sup>0<\/sup>\u00a0are the difference between the two approximations, then this difference can be solved from equation (7) as:<\/p>\n<p style=\"text-align: center\"><span class=\"katex-eq\" data-katex-display=\"false\"> \\displaystyle \\left[ {\\begin{array}{cccc} {\\text{i}{{\\text{s}}_{4}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; {\\text{i}{{\\text{a}}_{5}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}} &amp; {{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; 0 \\\\ {\\text{i}{{\\text{a}}_{4}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; {\\text{i}{{\\text{a}}_{5}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}} &amp; 0 &amp; {-1} \\\\ {-\\text{i}{{\\text{s}}_{4}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; {-\\text{i}{{\\text{a}}_{5}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}} &amp; {{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; 0 \\\\ {-\\text{i}{{\\text{a}}_{4}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} &amp; {-\\text{i}{{\\text{a}}_{5}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}} &amp; 0 &amp; {-1} \\end{array}} \\right]\\left[ {\\begin{array}{c} {\\text{\u03b4} {{\\text{\u03b8}}_{{14}}}} \\\\ {\\text{\u03b4} {{\\text{\u03b8}}_{{15}}}} \\\\ {\\text{\u03b4} {{\\text{s}}_{4}}} \\\\ {\\text{\u03b4} {{\\text{s}}_{6}}} \\end{array}} \\right]=-\\left[ {\\begin{array}{c} {{{\\text{b}}_{1}}-\\text{i}{{\\text{c}}_{1}}-{{\\text{a}}_{2}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{12}}}^{\\text{k}}}}}+{{\\text{a}}_{5}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}+{{\\text{s}}_{4}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} \\\\ {{{\\text{b}}_{1}}-\\text{i}{{\\text{a}}_{1}}-{{\\text{s}}_{6}}^{\\text{k}}+{{\\text{a}}_{5}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}+{{\\text{a}}_{4}}{{\\text{e}}^{{\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} \\\\ {{{\\text{b}}_{1}}+\\text{i}{{\\text{c}}_{1}}-{{\\text{a}}_{2}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{12}}}^{\\text{k}}}}}+{{\\text{a}}_{5}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}+{{\\text{s}}_{4}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} \\\\ {{{\\text{b}}_{1}}+\\text{i}{{\\text{a}}_{1}}-{{\\text{s}}_{6}}^{\\text{k}}+{{\\text{a}}_{5}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{15}}}^{\\text{k}}}}}+{{\\text{a}}_{4}}{{\\text{e}}^{{-\\text{i}{{\\text{\u03b8}}_{{14}}}^{\\text{k}}}}}} \\end{array}} \\right] <\/span><\/p>\n<p>or in real numbers:<\/p>\n<p style=\"text-align: center\"><span class=\"katex-eq\" data-katex-display=\"false\"> \\displaystyle \\left[ {\\begin{array}{cccc} {-{{\\text{s}}_{4}}\\sin {{\\text{\u03b8}}_{{14}}}^{k}}&amp;{-{{\\text{a}}_{5}}\\sin {{\\text{\u03b8}}_{{15}}}^{\\text{k}}}&amp;{\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}}&amp;0 \\\\ {{{\\text{s}}_{4}}\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}}&amp;{{{\\text{a}}_{5}}\\cos {{\\text{\u03b8}}_{{15}}}^{\\text{k}}}&amp;{\\sin {{\\text{\u03b8}}_{{14}}}^{\\text{k}}0}&amp;0 \\\\ {-{{\\text{a}}_{4}}\\sin {{\\text{\u03b8}}_{{14}}}^{\\text{k}}}&amp;{{{\\text{a}}_{5}}\\sin {{\\text{\u03b8}}_{{15}}}^{\\text{k}}}&amp;0&amp;1 \\\\ {{{\\text{a}}_{4}}\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}}&amp;{{{\\text{a}}_{5}}\\cos {{\\text{\u03b8}}_{{15}}}^{\\text{k}}}&amp;0&amp;0 \\end{array}} \\right] \\left[ {\\begin{array}{c} {\\text{\u03b4} {{\\text{\u03b8}}_{{14}}}} \\\\ {\\text{\u03b4} {{\\text{\u03b8}}_{{15}}}} \\\\ {\\text{\u03b4} {{\\text{s}}_{4}}} \\\\ {\\text{\u03b4} {{\\text{s}}_{6}}} \\end{array}} \\right]=-\\left[ {\\begin{array}{c} {{{\\text{b}}_{1}}-{{\\text{a}}_{2}}\\cos {{\\text{\u03b8}}_{{12}}}^{\\text{k}}+{{\\text{a}}_{5}}\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}+{{\\text{s}}_{4}}\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}} \\\\ {-{{\\text{c}}_{1}}-{{\\text{a}}_{2}}\\sin {{\\text{\u03b8}}_{{12}}}^{\\text{k}}+{{\\text{a}}_{5}}\\sin {{\\text{\u03b8}}_{{14}}}^{\\text{k}}+{{\\text{s}}_{4}}\\sin {{\\text{\u03b8}}_{{14}}}^{\\text{k}}} \\\\ {{{\\text{b}}_{1}}-{{\\text{s}}_{6}}^{\\text{k}}+{{\\text{a}}_{5}}\\cos {{\\text{\u03b8}}_{{15}}}^{\\text{k}}+{{\\text{a}}_{4}}\\cos {{\\text{\u03b8}}_{{14}}}^{\\text{k}}} \\\\ {-{{\\text{a}}_{1}}+{{\\text{a}}_{5}}\\sin {{\\text{\u03b8}}_{{15}}}^{\\text{k}}+{{\\text{a}}_{4}}\\sin {{\\text{\u03b8}}_{{14}}}^{\\text{k}}} \\end{array}} \\right] <\/span><\/p>\n<p>which are in the form:<\/p>\n<p style=\"text-align: center\"><strong>A\u03b4<\/strong> = <strong>E<\/strong><\/p>\n<p>where <strong>A<\/strong> is the \u201ccoefficient matrix\u201d\u00a0 in either complex or real form. <strong>E<\/strong> is the error in the loop closure equations with the initial estimates of the position variables (i.e. if the estimates are correct then <strong>E<\/strong> = <strong>0<\/strong>). The solution for the matrix equation is:<\/p>\n<p style=\"text-align: center\"><strong>\u03b4<\/strong> = <strong>A<\/strong><sup>-1<\/sup><strong>E<\/strong><\/p>\n<p>After solving for the differences \u03b4\u03b8<sub>14<\/sub>, \u03b4\u03b8<sub>15<\/sub>, \u03b4s<sub>4<\/sub>, \u03b4s<sub>5<\/sub>, the next improved condition is:<\/p>\n<p style=\"text-align: center\">s<sub>4<\/sub><sup>(k+1)<\/sup> = s<sub>4<\/sub><sup>k<\/sup> + \u03b4s<sub>4<\/sub><\/p>\n<p style=\"text-align: center\">s<sub>5<\/sub><sup>(k+1)<\/sup> = s<sub>5<\/sub><sup>k<\/sup> + \u03b4s<sub>5<\/sub><\/p>\n<p style=\"text-align: center\">\u03b8<sub>14<\/sub><sup>(k+1)<\/sup> = \u03b4<sub>14<\/sub><sup>k<\/sup> + \u03b4\u03b8<sub>14<\/sub><\/p>\n<p style=\"text-align: center\">\u03b8<sub>15<\/sub><sup>(k+1)<\/sup> = \u03b8<sub>15<\/sub><sup>k<\/sup> + \u03b4\u03b8<sub>15<\/sub><\/p>\n<p>We repeat the steps until\u00a0<strong>F<\/strong>(<strong>x<\/strong><sup>(k+1)<\/sup>) &lt; <strong><span style=\"font-family: Symbol\">e<\/span><\/strong><strong><sub>e<\/sub><\/strong>, or <strong>x<\/strong><sup>(k+1)<\/sup> \u2212 <strong>x<\/strong><sup>(k)<\/sup><strong>\u00a0&lt; <\/strong><span style=\"font-family: Symbol\">\u00a0<\/span><strong><span style=\"font-family: Symbol\">e<\/span><\/strong><strong><sub>s<\/sub><\/strong>. In mechanisms the solution usually converges within less then 10 steps if the initial guess is not too far away from the exact solution.<\/p>\n<p>If the position analysis is to be performed for the whole cycle of the mechanism, one must make an initial guess for the dependent variables for the initial value of the crank angle and then solve for the correct values of the dependent variables using Newton-Raphson method. For the next position, when we increment the crank angle by a certain amount (usually less than 10 degrees), we can use the values of the position variables of the previous step as the initial guess of this step and perform the iterative method for this new position. If the step size is reasonably small, then the solution will converge\u00a0 to the next position of the mechanism. Since we are solving a nonlinear problem using stepwise linearization, if the step size is too large there is always the possibility of finding the solution for which the mechanism has to be assembled in a different configuration (i.e. if one has started with an open configuration the next solution may give a crossed configuration of the mechanism). Also, you may expect some numerical solution difficulties when the mechanism is at or near critical positions where the Jacobian matrix is zero or very small.<\/p>\n<p><strong>Example:<\/strong><\/p>\n<p align=\"center\"><div class=\"su-image-carousel  su-image-carousel-has-spacing su-image-carousel-has-lightbox su-image-carousel-has-outline su-image-carousel-adaptive su-image-carousel-slides-style-default su-image-carousel-controls-style-dark su-image-carousel-align-center\" style=\"max-width:450px\" data-flickity-options='{\"groupCells\":true,\"cellSelector\":\".su-image-carousel-item\",\"adaptiveHeight\":true,\"cellAlign\":\"left\",\"prevNextButtons\":true,\"pageDots\":false,\"autoPlay\":false,\"imagesLoaded\":true,\"contain\":false,\"selectedAttraction\":1,\"friction\":1}' id=\"su_image_carousel_69d75d5916dd3\"><div class=\"su-image-carousel-item\"><div class=\"su-image-carousel-item-content\"><a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/09\/image219-7.gif\" target=\"_blank\" rel=\"noopener noreferrer\" data-caption=\"\"><img loading=\"lazy\" decoding=\"async\" width=\"415\" height=\"359\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/09\/image219-7.gif\" class=\"\" alt=\"\" \/><\/a><\/div><\/div><div class=\"su-image-carousel-item\"><div class=\"su-image-carousel-item-content\"><a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/09\/sixlink.gif\" target=\"_blank\" rel=\"noopener noreferrer\" data-caption=\"\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"256\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/09\/sixlink.gif\" class=\"\" alt=\"\" \/><\/a><\/div><\/div><\/div><script id=\"su_image_carousel_69d75d5916dd3_script\">if(window.SUImageCarousel){setTimeout(function() {window.SUImageCarousel.initGallery(document.getElementById(\"su_image_carousel_69d75d5916dd3\"))}, 0);}var su_image_carousel_69d75d5916dd3_script=document.getElementById(\"su_image_carousel_69d75d5916dd3_script\");if(su_image_carousel_69d75d5916dd3_script){su_image_carousel_69d75d5916dd3_script.parentNode.removeChild(su_image_carousel_69d75d5916dd3_script);}<\/script><\/p>\n<p>The six link mechanism shown is used as a rapier drive mechanism in textile industry. Link lengths are:<\/p>\n<p>|C<sub>0<\/sub>A<sub>0<\/sub>|<sub>y<\/sub> = a<sub>1<\/sub> = 340 mm; |A<sub>0<\/sub>E|<sub>y<\/sub> = b<sub>1<\/sub> = 520 mm; |C<sub>0<\/sub>A<sub>0<\/sub>|<sub>x<\/sub> = d<sub>1<\/sub> = 623 mm; |A<sub>0<\/sub>A| = a<sub>2<\/sub> = 250 mm; |AB| = a<sub>3<\/sub> = 1225 mm; |CB| = a<sub>4<\/sub> = 350 mm; |C<sub>0<\/sub>C| = a<sub>5<\/sub> = 600 mm; |BD| = b<sub>4<\/sub> = 600 mm and|DE| = a<sub>6<\/sub> = 1100 mm. You are to determne s<sub>16<\/sub> when \u03b8<sub>12<\/sub> = 60\u00b0.<\/p>\n<p>As an initial guess for the position variables assume \u03b8<sub>13<\/sub>\u00a0= 200\u00b0; \u03b8<sub>15<\/sub> = 180\u00b0; \u03b8<sub>14<\/sub>=80\u00b0\u00a0and s<sub>16<\/sub>\u00a0= 400 mm when \u03b8<sub>12<\/sub>=60\u00b0. We shall use MathCAD root finding routine, which utilises Newton-Raphson method (with some modifications). MathCAD output is as follows: You can see that when you write the loop equations and give the initial guess for the position variables, the\u00a0<strong><em>Given<\/em><\/strong>\u00a0and\u00a0<strong><em>Find<\/em><\/strong>\u00a0build in functions gives you the result in just a few steps while performing all the necessary iteration.<\/p>\n<p align=\"center\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2149 aligncenter\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image028.gif\" alt=\"\" width=\"714\" height=\"969\" \/><\/span><\/p>\n<p align=\"center\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2150 aligncenter\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image030.gif\" alt=\"\" width=\"786\" height=\"948\" \/><\/span><\/p>\n<p align=\"center\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2151\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image032.gif\" alt=\"\" width=\"704\" height=\"486\" \/><\/span><\/p>\n<div>\n<p style=\"text-align: left\" align=\"left\">This iterative solution can also be solved in Excel as shown in the excel sheet below. After entering the link lengths we make an initial guess for the unknown position variables \u03b8<sub>13<\/sub>, \u03b8<sub>14<\/sub>, \u03b8<sub>15<\/sub>\u00a0and s<sub>16<\/sub> for a given value of \u03b8<sub>12<\/sub> in row 10 (A10 to E10). Next, we write the x and y components of the two loop equations into cells F10 to\u00a0<span style=\"font-family: Arial, Helvetica, sans-serif\">I<\/span>10. If our guess values were correct these values must be zero. It is not!! Now, let us square and add these values (errors) by typing &#8220;<strong>=F10^2+G10^2+H10^2+I10^2&#8243;\u00a0<\/strong>into the cell J10. The value in this cell can only be zero if the values of the cells F10 to I10 are all equal to zero. Now we use the solver toolbox by clicking the &#8220;tools&#8221; and &#8220;solver&#8221;. On the pop-up menu as the target cell we select J10 and for Equal To we select value of: 0. By changing Cells we select B10 to E10 as the initial guess. And then we click &#8220;solve&#8221; button on the pop-up menu. The values in cells B10 to E10 will change so that cell J10 is equal to zero, as seen on the next Excel sheet.<\/p>\n<p align=\"left\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2152\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image034e.gif\" alt=\"\" width=\"998\" height=\"255\" \/><\/span><\/p>\n<p align=\"left\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2153\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image036e.gif\" alt=\"\" width=\"1023\" height=\"261\" \/><\/span><\/p>\n<p align=\"left\">One can as well draw the mechanism by first determining the coordinates of the joints and then drawing lines between these coordinates in Excel chart as shown below<\/p>\n<p align=\"left\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2154\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image038.gif\" alt=\"\" width=\"464\" height=\"274\" \/><\/span><\/p>\n<p align=\"left\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2156\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image040.gif\" alt=\"\" width=\"596\" height=\"413\" \/><\/span><\/p>\n<div>\n<div id=\"ftn1\">\n<div align=\"left\">The Jacobian matrix is:<\/div>\n<div align=\"left\"><span style=\"color: #cc0000\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2157 size-full aligncenter\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2022\/03\/3-9_clip_image035e.gif\" alt=\"\" width=\"238\" height=\"153\" \/><\/span><\/div>\n<div align=\"left\">where F<sub>kxm<\/sub>\u00a0is the partial derivative of F<sub>k<\/sub>\u00a0with respect to x<sub>m<\/sub>.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p align=\"center\">\n<\/div>\n<\/div><\/div><\/div><\/div><\/div>\n\n\n<p>  <a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/ch3\/3-8\/\" data-type=\"page\"><img loading=\"lazy\" decoding=\"async\" width=\"38\" height=\"38\" class=\"wp-image-16\" style=\"width: 38px\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/04\/back_button.gif\" alt=\"\" \/><\/a><a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/ch3\/\" data-type=\"page\" data-id=\"52\"><img loading=\"lazy\" decoding=\"async\" width=\"38\" height=\"38\" class=\"wp-image-17\" style=\"width: 38px\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/04\/contents_button.gif\" alt=\"\" \/><\/a><a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/\" data-type=\"page\" data-id=\"47\"><img loading=\"lazy\" decoding=\"async\" width=\"38\" height=\"38\" class=\"wp-image-18\" style=\"width: 38px\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/04\/home_button.gif\" alt=\"\" \/><\/a><a href=\"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/ch4\/\" data-type=\"page\" data-id=\"92\"><img loading=\"lazy\" decoding=\"async\" width=\"38\" height=\"38\" class=\"wp-image-20\" style=\"width: 38px\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/04\/next_button.gif\" alt=\"\" \/><\/a><img loading=\"lazy\" decoding=\"async\" width=\"119\" height=\"40\" class=\"wp-image-15\" style=\"width: 119px\" src=\"https:\/\/blog.metu.edu.tr\/eresmech\/files\/2021\/04\/ceres.gif\" alt=\"\" \/>       <\/p>\n","protected":false},"excerpt":{"rendered":"<p>3.9 Iterative Solution of the Loop Closure Equations In the previous sections we were able to solve the loop closure stepwise or in closed form. Usually such a solution can be found if in each loop closure equation there are &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"more-link\" href=\"https:\/\/blog.metu.edu.tr\/eresmech\/mechanisms\/ch3\/3-9\/\"> <span class=\"screen-reader-text\">3-9<\/span> Devam\u0131n\u0131 Oku &raquo;<\/a><\/p>\n","protected":false},"author":7747,"featured_media":0,"parent":1950,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"full-width-page.php","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-2146","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/pages\/2146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/users\/7747"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/comments?post=2146"}],"version-history":[{"count":0,"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/pages\/2146\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/pages\/1950"}],"wp:attachment":[{"href":"https:\/\/blog.metu.edu.tr\/eresmech\/wp-json\/wp\/v2\/media?parent=2146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}