The online racing simulator
In LRA I calculate the G forces by differentiating the position: this results in the center of the turn circle, and the lateral and longitudinal forces on the CoG. These need to be corrected for the slip angle of the car's body, using the forward vector and right vector.

To calculate the center of the turn circle at time T, LRA takes the position at <T - 0.05s> and <T + 0.05s> (formula). This also "averages out" some noise.


Your approach (calculating the G forces from the tyre forces) had crossed my mind, but I didn't follow that route, because:

1. It will give wrong results for the longitudinal force, because you need to subtract the force from air resistance -- which isn't in the RAF data. (At top speed the force on the wheels is pretty high, but acceleration is zero.) For the lateral force you should get a similar error, but smaller, because lateral drag will be very low, if LFS models this at all.

2. The tyre forces have big spikes when the wheel touches a kerb or bounces on the road surface. I expect the G forces derived from that will also be "spikey."

(I never tried it, though.)

If you want a good test for your calculations, use a RAF file from a lap at the Kyoto Oval. The banked turns there are an extra complication.
Hi, i have been reading your discussion because i have similar interests in usage of LFS as henningo. That is simulator for preliminary developing professional racing equipment.

The case is, that we are trying to get on-track DATA in real form without real track driving (racing). That includes noises, track bumps, wind forces and so on. This is why the wheel speeds are so interesting for henningo. He is working on modern traction control system.

TIP to get wind force:
***********************************************************************
This is a math fitting procedure and it is quite accurate. I am using this procedure to define a wind force and homemade dyno correction factor for go-karts and in future on prototype Radical.


Fw....as wind force [N]
A......front surface area [m^2]
Cx....something like drag coefficient [/]
V......speed in [m/s]
ra.....density of air [1,3 kg/m^3]

(1) Fw = A*Cx*V^2*ra/2

As A and Cx are very hard to define it is best to put them both in constant....
C1 = A*Cx [m^2]

(2) Fw = C1*V^2*ra/2

As the engine power diagram is known (kW/RPM) (you should also get it for LFS car) it is possible to determine the force that the car has on the drive wheels.

P…..engine power [kW]
M….engine torque [Nm]
Fe…force of engine on drive wheels [N]
w….engines speed [rad/s] (not RPMs) w = 2*pi*n
i…...transmission [i] including driving gear, primary transmission, differential….
r…..dynamic radius of driving wheels [m]

(3) P = M*w
(4) M = P/w
(5) Fe = P/(w*r)*i

Now that the forces Fe and Fw are on the same level it is possible to write balance equation.

a……acceleration of the car [m/s]
m….mass of the car [kg]

(6) 0 = Fe-Fw–a*m
(7) a = (Fe-Fw)/m

Now it is able to compare cars speed form telemetry (on car or LFS RAF file) and mathematically determined one.

V…. speed of car [m/s]
Vo.. staring speed [m/s]
t….. elapsed time [s]ž

(8) V = Vo+a*t

Compiling equations (2), (5), (7) and (8) results mathematical model for fitting wind force constant C1 (9)

(9) V = Vo+(P/(w*r)*i-C1*V^2*ra/2)/m

Using either hand editing C1 and inspecting graph plot fitting or using one of mathematical fitting methods that are included in LIBs should be just a programming routine from now on.

***********************************************************************


I should thank to all of you for hi-level discussion and superb help on the LFS forum.

I prefer LFS as my shelter from ended racing driver career!!!!
Attached images
wind force fitting.JPG
#28 - w126
I'm not sure if you are aware that you can obtain what looks like an equivalent of A*Cx*ra/2 from CAR_info.bin files.
http://www.lfs.net/?page=CAR_INFO_BIN
Quote :// Now 4 aero blocks - rear wing, front wing,
undertray, body : 20 bytes each)

128 Position : x, y, z
Lift : multiply by speed squared to get lift value
Drag : multiply by speed squared to get drag value

2

FGED GREDG RDFGDR GSFDG