{"id":46,"date":"2011-12-21T20:55:45","date_gmt":"2011-12-21T19:55:45","guid":{"rendered":"http:\/\/www.edy.es\/dev\/?p=46"},"modified":"2020-04-30T21:30:08","modified_gmt":"2020-04-30T19:30:08","slug":"facts-and-myths-on-the-pacejka-curves","status":"publish","type":"post","link":"https:\/\/www.edy.es\/dev\/2011\/12\/facts-and-myths-on-the-pacejka-curves\/","title":{"rendered":"Facts and myths on the Pacejka curves"},"content":{"rendered":"<p><a href=\"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Pacejka_94_Longitudinal_Curve.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-132\" title=\"Pacejka_94_Longitudinal_Curve\" src=\"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Pacejka_94_Longitudinal_Curve-158x300.png\" alt=\"\" width=\"158\" height=\"300\" srcset=\"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Pacejka_94_Longitudinal_Curve-158x300.png 158w, https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Pacejka_94_Longitudinal_Curve.png 274w\" sizes=\"auto, (max-width: 158px) 100vw, 158px\" \/><\/a>When developing vehicle physics the tire is the single component that has the most influence in the entire system. When designing a tire simulation the Pacejka Curves arise sooner or later.<\/p>\n<h4>What&#8217;s &#8220;Pacejka&#8221; exactly?<\/h4>\n<p>First of all, the Pacejka Magic formula, also called simply Magic Formula &#8220;MF&#8221; or &#8220;MF-tyre&#8221;, is a function\u00a0<em>y=f(x)<\/em> which is used to predict and simulate the forces developed\u00a0by a tire. Given an input <em>x<\/em> and a list of coefficients (<em>b0..b12<\/em>\u00a0in the picture), the function calculates the force <em>y<\/em>\u00a0developed by the tire. Three different functions are used, one for longitudinal forces, other for lateral forces, and the last one for the self-aligning torque (the feedback force you experiment on your car&#8217;s steering wheel). Each function has its own set of coefficients.<\/p>\n<p>The coefficients affect the final shape of the curve in a wide variety of ways (see the pic). The goal is\u00a0<strong>fitting the curve with the results obtained in the empiric experiments<\/strong>\u00a0on the specific tire the curve is being calculated for. Once the proper coefficients for the curve are found, the behavior of that tire can be easy and realistically predicted without having to actually use the real tire.\u00a0One can imagine using a tire testing facility, testing a specific tire in a wide variety of conditions and measuring the results. Then, based on those results, one could start toying with the coefficients of the Pacekja curves until getting a curve\u00a0that acceptably fits the experimental results.<\/p>\n<h4>What about the coefficient sets for Pacejka curves?<\/h4>\n<p>Pacejka and other models are developed by and for the automotive industry. Real coefficient sets are scarce and hard to find, as they are heavily protected intellectual data. Tire manufacturers sell the coefficient sets to interested customers who can then simulate how a specific tire would behave in a vehicle (the <a href=\"http:\/\/www.mscsoftware.com\/Products\/CAE-Tools\/Adams.aspx\">MSC Adams<\/a> software is an industry-standard for modelling this kind of simulations). A Pacejka coefficient set for a single tire model can easily cost around $1000-1500.<\/p>\n<p>You may find many Pacejka sets over there (for instance as part of the car add-ons for the <a href=\"http:\/\/www.racer.nl\/\">Racer.nl<\/a> simulator). But most of them are not <em>real<\/em> Pacejka sets as they haven&#8217;t been calculated based on measures on the real tires. Anyone can use a <a href=\"http:\/\/www.racer.nl\/pacplay.htm\">Pacejka editor<\/a> and get an arbitrary set of coefficients. For that, the Pacejka formula is a realistic and flexible method for simulating an <em>imaginary<\/em> tire based on the behavior expected in a simulated vehicle.<\/p>\n<p>I&#8217;ve written a document which describes <a title=\"Pacejka \u201994 parameters explained \u2013 a comprehensive guide\" href=\"https:\/\/www.edy.es\/dev\/docs\/pacejka-94-parameters-explained-a-comprehensive-guide\/\">how each Pacejka coefficient affects the resulting curve<\/a>. This is useful for designing tire friction curves matching a specific behavior in vehicle simulation games.<\/p>\n<h4>Is Pacejka a necessary or best method for simulating tires?<\/h4>\n<p>Surprisingly, the curves themselves are not the most important part of a tire simulation. Remember, a Pacejka curve is simply a function <em>y=f(x)<\/em>. Any function with shape similar to Pacejka (peak &#8211; asymptote) will work, no matter how it&#8217;s calculated. It could result more or less realistic, but even just\u00a0 a flat, clamped slope will do a decent work.<\/p>\n<p>The critical\u00a0part\u00a0for simulating a tire is <em>how<\/em> are you calculating the parameters you will feed the curves with. The <em>&#8220;x&#8221;<\/em> in <em>y=f(x)<\/em>. And here, my friend, is where things get serious.<\/p>\n<h4>What are the problems with the Pacejka-based methods?<\/h4>\n<p>Pacejka and other models are based on the amount of <em>slip<\/em> of the tire over the ground. The longitudinal version uses the difference between the tire&#8217;s angular velocity and the actual velocity over the ground (<strong><em>slip ratio<\/em><\/strong>). The lateral version is based on the angle between the wheel&#8217;s heading direction and the true movement direction (<strong><em>slip angle<\/em><\/strong>).<\/p>\n<p lang=\"en-US\">However the\u00a0<em>slip ratio<\/em> is a tricky concept. Having slip doesn&#8217;t mean that the tire is actually sliding over the ground. The slip ratio reflects the fact that the drive wheels compress the tire at the front of the contact patch where the radius of the wheel is smaller, so it effectively travels faster than the ground underneath. A portion of the contact patch is adherent to the surface while the other portion is slipping. This <em>slip ratio<\/em> generates the force that moves the car. <em>In a car cruising at constant speed the drive wheels will be spinning a bit faster than the non-drive wheels.<\/em><\/p>\n<p lang=\"en-US\">There are several different definitions for slip ratio and slip angle available. These ones are a commonly used definition borrowed from the great book from Brian Beckman\u00a0<em><a href=\"https:\/\/projectlab.engphys.ubc.ca\/wp-content\/uploads\/Beckman_-_The_Physics_of_Racing.pdf\">The Physics Of Racing<\/a><\/em>:<\/p>\n<p lang=\"en-US\" style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-448\" style=\"border-width: 0px;\" title=\"Slip ratio and slip angle\" src=\"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Slip-formulas.png\" alt=\"\" width=\"250\" height=\"50\" srcset=\"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Slip-formulas.png 357w, https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Slip-formulas-300x60.png 300w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/p>\n<p style=\"padding-left: 30px;\">\u03c9 \u00a0 \u00a0angular velocity<br \/>\nR<sub>e<\/sub>\u00a0 effective radius<br \/>\nV \u00a0 \u00a0lineal velocity<br \/>\nV<sub>y<\/sub> \u00a0lateral velocity<br \/>\nV<sub>x<\/sub> \u00a0longitudinal velocity<\/p>\n<p>The slip ratio <strong><em>\u03c3<\/em><\/strong> and slip angle <strong><em>\u03b1<\/em><\/strong> are the input for the Pacejka formulas, which yield the longitudinal and lateral forces exerted by the tire. Although this kind of methods is known to provide the state-of-the-art tire simulation, they still exhibit severe problems:<\/p>\n<ul>\n<li>A quick look at the formulas reveal an evident and inconvenient fact: <em>the slip formulas become numerically unstable when V approaches zero and are not defined at all when the vehicle is stopped<\/em> (0\/0). Other definitions of the slip ratio also suffer of this problem in a similar way, requiring hacks and workarounds at low speeds.<\/li>\n<li>The lateral force is based on the slip angle. However the slip angle does <em>not<\/em> account for any variation with the speed. Intuitively, the forces generated at high speed must be greater than the forces at low speed with the same slip angles. But using these formulas a velocity of V = (0.2, 0.1) = 0.22 m\/s, results in the same slip angle (and thus the same lateral force) as V = (20, 10) = 22.36 m\/s.<\/li>\n<\/ul>\n<h4>Is there a better method?<\/h4>\n<p>Of course, there are always better methods. The challenge here is to design a method that is fully coherent yet realistic enough that works under all conditions of the tire, including the forces at low speeds and with the vehicle stopped.<\/p>\n<p>This is what I&#8217;m currently working on \ud83d\ude09<\/p>\n<hr \/>\n<p><strong><em><br \/>\nEDIT (March 2015):<\/em><\/strong><\/p>\n<p>&#8230;and finally I&#8217;ve designed and implemented a fully coherent and accurate tire model and vehicle simulation that resolves all issues mentioned in this article. The tire and vehicle simulation react realistically to all situations with perfect continuity between\u00a0all states.<\/p>\n<p><a title=\"Early preview of Vehicle Physics Pro\" href=\"https:\/\/www.edy.es\/dev\/2014\/11\/early-preview-of-vehicle-physics-pro\/\">https:\/\/www.edy.es\/dev\/2014\/11\/early-preview-of-vehicle-physics-pro\/<\/a><\/p>\n<p><a href=\"http:\/\/vehiclephysics.com\">http:\/\/vehiclephysics.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>When developing vehicle physics the tire is the single component that has the most influence in the entire system. When designing a tire simulation the Pacejka Curves arise sooner or later. What&#8217;s &#8220;Pacejka&#8221; exactly? First of all, the Pacejka Magic formula, also called simply Magic Formula &#8220;MF&#8221; or &#8220;MF-tyre&#8221;, is a function\u00a0y=f(x) which is used [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":413,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[11,5],"tags":[],"class_list":["post-46","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-vehicle-physics"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.edy.es\/dev\/wp-content\/uploads\/2011\/12\/Pacejka-Big.png","jetpack_shortlink":"https:\/\/wp.me\/p1PjRF-K","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/posts\/46","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/comments?post=46"}],"version-history":[{"count":41,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/posts\/46\/revisions"}],"predecessor-version":[{"id":1992,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/posts\/46\/revisions\/1992"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/media\/413"}],"wp:attachment":[{"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/media?parent=46"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/categories?post=46"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.edy.es\/dev\/wp-json\/wp\/v2\/tags?post=46"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}