I've finally found some time to play with the Pacejka editor.
360.car tire
[img]...[/img]
Goodyear 20x65 R 13 12psi adjusted (had to flip some signs)
[img]...[/img]
Goodyear 20x65 R 13 12psi original from "FULL VEHICLE DYNAMICS MODEL OF A FORMULA SAE RACECAR USING ADAMS/CA"
[img]...[/img]
360 tire (here gray) against the Goodyear
[img]...[/img]
The 360 values look quite realistic! I wonder where they come from? The 360 tire develops somewhat more grip than the Goodyear.
I have not comprehensively looked into all the coefficients, but in some little side work I was doing, which had me plotting some angle/Fy curves from the engine itself, I noticed that Fy for the touring tires was way way too high. The problem turns out to be a1 and a2 grossly amplify the lateral grip. If you want that much lateral grip, like an open wheel slick, you should be using a higher friction coefficient.
The spirit of the Magic Formula variants is that they peak near mu*Fz. D, the lateral peak term, is mainly to model load sensitivity, which Pacejka himself even calls 'peak side force *reduction* factor' in his 2002-2006 book.
I have not dug into your other numbers, but the general shapes of your curves seems fine enough, so I'd just try to fix your peak factors. BTW, those beckman Ferrari numbers are whack too -- they amplify force as well, even worse than your touring numbers.
Interesting! After you tweak the numbers post them here, I'd love to try them out.
OK, I'll do that when I get to that. However, that probably won't be for a little while. The truth is, the 'right' numbers won't feel much different than what you have for your typical cars. You basically have racing tire grip done through the parameters instead of the friction coefficient, but the Fy you see is about the same either way.
It's just be better long term to get them right, so new tires via cut&paste make sense to the cutter and pasters.
Maybe, although what I was doing that caused me to notice the issue was working on a dynamic tire model. I was running my tire through a test and comparing output data with the stock VD tire through the same test.
So I'm not sure I'd be terribly motivated to groom Pacejka documentation when my attention is on a different tire model altogether.
well that makes me a sad panda.
Why be sad? A dynamic tire model is better for a dynamic simulation than a steady state tire model anyway.
Plus, the documentation is not really wrong as-is. To go the next step properly in the docs would probably be as involved as writing a chapter in Genta or Pacejka. So simply referring to those references is probably best anyway.
I'd love to hear more about your dynamic tire model, if you don't mind.
I don't mind, as soon as I figure out for sure which model(s) I like best and figure out how to present them.
However, I do know that I have (because I already have in a copy) to refactor how the tires are getting called for forces in vdrift. A more complete tire sim does all of its forces more holistically/integrally, so I get rolling resistance (both F and induced M) and friction in the same call...and normal force. The normal force comes from the tire sim, it is not dictated to the tire sim. Basically the tire returns 6 dofs on a call (3 F, 3 M). In my little hack refactor, this makes the suspension update a little less self contained (since normal force basically has to feedback to drive displacement), but it works for me. For now.
Another note on your Pacejka usage: Beckman's combining assumes no horizontal shift, but you have shift in your tire parameters.
I'd consider doing one of the other combining methods.
Your traction circle combining is much better than the beckman method in my opinion, but can be off like any method that assumes a circle based on max Fx and Fy. A little bit better would be to run through the friction calculation again with a combined 'purified' concept of slip to get the effective maximums. This is from a mutated codebase, so you may have to change some names and stuff to try it out. The resulting curves are similar to your traction circle method, but track better with the anisotropy of the tire.
T Fx = getFx(m_sigma, Fz, m_friction_coefficient[0], max_Fx);
T Fy = getFy(m_alpha, Fz, gamma, m_friction_coefficient[1], max_Fy);
T x = cos(m_alpha_rad);
x = fabs(Fx) / (fabs(Fx)+fabs(Fy));
T y = 1.0-x;
T one = 1.0;
if(m_sigma < 0.0)
{
one = -1.0;
}
T pure_sigma = m_sigma / (one + m_sigma);
T pure_alpha = tan(m_alpha_rad) / (one + m_sigma);
T pure_combined = sqrt(pure_sigma*pure_sigma + pure_alpha*pure_alpha);
T kappa_combined = pure_combined / (1.0 - pure_combined);
T alpha_combined = atan((one+m_sigma)*pure_combined);
T Flimit_lng = getFx(kappa_combined, Fz, m_friction_coefficient[0], max_Fx);
T Flimit_lat = getFy(alpha_combined*180.0/fe::pi, Fz, gamma, m_friction_coefficient[0], max_Fy);
T Flimit = (fabs(x*Flimit_lng) + fabs(y*Flimit_lat));
T Fmag = sqrt(Fx*Fx + Fy*Fy);
if(Fmag > Flimit)
{
T scale = Flimit/Fmag;
Fx *= scale;
Fy *= scale;
}
[/img]
For a game called VDrift, I'm thinking you may consider trying to fix beckman's method and use that after all. It should be pretty straightforward to do.
On track, it seems the driftability of the cars is enhanced, probably artificially, by beckman's combining. I plotted some curves, and sure enough, beckman's combining overestimates overall grip in pure Pacejka terms.
However, it should be noted that semi-empirical methods inherently underestimate grip on dynamic transitions...exactly where beckman's overestimation is most noticeable while driving. IOW, two wrongs may be ending up with something of a right, at least for high slip angle driving.
Putting in the more high fidelity, wrt Pacejka curves, combiners definitely results in a more wicked snap loose tire model than the beckman method. This does not mean the end result of the other combiners is high fidelity wrt dynamic reality though, so don't mistake that in thinking that I'm saying they are better than beckman's method. Just like Beckman himself basically says, this is an area for creative interpretation.
This shows an example of what I am talking about, showing a variety of combining techniques. This is a test case where the slip angle is fixed at 1 radian, the velocity is fixed at 10 m/s, and the angular velocity is swept from 0 to 20 rad/s.
This makes it strikingly clear why beckman is more controllable for drifting. A little throttle or brake when highly side loaded does not gobble up side grip suddenly. The transitions are very mild.
Further, I think, this demonstrates quite clearly what is wrong with semi-empirical models for dynamic simulation. Those top three models are probably more accurate for steady state, but when you apply throttle on a real tire, it does not drop side grip off like a cliff on a real tire, because the longitudinal grip has to build up to take it away.