Engine wear

KKS

Hello.
I try to calculate when my engine blown.... and I stack.

Can u tell me when engine blown with this values? If i keep 1400 RPM always and 80 engine temp?
LifetimeEngineRPM=(1400.00,50.0)
LifetimeOilTemp=(80.0,1.0)
LifetimeAvg=20 // average lifetime in seconds
LifetimeVar=0

I calculate - it's must be 20.000 sec. And it is.
But can you tell me how much it will be with RPM's 1450? 1500? 1600? 1400? 1350?

All my calculates at that values are wrong.
 
Half the wear comes from temp, the other half from rpm.

@ 1400 RPM you wear at a rate of half a second per second.
@ 80 C you wear at a rate of half a second per second.
total wear rate at normal temps is 1 second per second.

For each stepping number the wear doubles (or the engine life is halved).
1400 0.5 Ws/s
1450 1 Ws/s
1500 2 Ws/s
1600 4 Ws/s
.
.
.


80C 0.5 Ws/s
81C 1 Ws/s
82C 2 Ws/s
83C 4 Ws/s
.
.
.


The question is: What happens to the wear rate if under the lifetime values. I've always calculated them as the lowest rate (0.5s/s) for each RPM and Temp (1 second total wear per second). How does an engine running under the lifetime values wear less then the time it actually runs?

On second thought @ 0 rpm 0 temp there is 0 wear. Might be that there is some ramp up to the lifetime value? The easy way to test is to set your rev limiter to half the life value and see if your engine lasts ~40 seconds. Make sure you have damages on.
 
Last edited:
lordpantsington, Thank you! You clear my mind! :)
Remain to describe this mathematically. To use in MoTeC.

PS I coudn't understand why with +50 RPM I have not a half. Now it's clear. Lifetime/(RPM coef + Temp coef) = 20/(1+0.5)=13.333
 
... so far so good and understood.

Along to the questions of lordpantsington there are still some open questions to me:

In an engine.ini file one will find the following:
Code:
EngineBoostRange=(0, 1, 5)
BoostEffects=(75, 0.103, 11.0)   // RPM increase per setting, fuel increase (%) per setting, engine wear rate (%) per setting

My understanding:
+ "EngineBoostRange=(0, 1, 5)"
- this example tells me that this vehicle has 5 Engine Boost Mappings starting with MP1.

+ BoostEffects=(75, 0.103, 11.0)
- First value: Each MP (starting with MP2) will add the amount of the first value relative to the current setup EngineRPM setting value.
Current Setup RPM = 8700 RPM
MP1 = 8700 RPM
MP2 = 8775 RPM
MP3 = 8850 RPM
MP4 = 8925 RPM
MP5 = 9000 RPM

- Second value: Each MP (starting with MP2) will increase fuel usage relative to the original fuel usage
MP1 = +0.000%
MP2 = +0.103%
MP3 = +0.206%
MP4 = +0.309%
MP5 = +0.412%

- Third value: Each MP (starting with MP2) will increase engine wear rate relative to the original engine wear rate
MP1 = +00.0%
MP2 = +11.0%
MP3 = +22.0%
MP4 = +33.0%
MP5 = +44.0%

1st question: When I use MP2 the engine wear rate will be raised to +11.0% e.g. Assuming I stay below the 9000 RPM at all times during a race. With MP1 the normal wear rate is 0.5 second for each second driving the car around the track. Using MP2 adding 11.0% to the "normal" wear rate, would it be: (0.5s * 1.11%) for each second and I end up with a raised wear rate of 0.555 seconds for each second driving the car around the track, even if I stay below the 9000 RPM at all times ???

2nd question: Is the wear rate of the engine in a PRACTISE SESSION different to the wear rate in a RACE SESSION ???

During my research regarding rFactor engine wear rate calculations I stumbled over the formula shown in the picture:

View attachment 2908

Can someone confirm this to be a valid equation?
Looking at the UNITS of the values in the RPM equation the result is a RPM value ... can someone explain what those RPM are mend to be !?!?

Thanks in advance !!!

Cheers
Frank
 
1A:
Your logic seems reasonable, although it could be +11% for total wear. Seems as though turbo would increase both heat and RPM, 1.11 seconds of wear per second.

2A:
I don't think wear carries over to other sessions, each session resets engine wear.

The answer to my question involves statistics. My knowledge of such is limited, this page was helpful: http://en.wikipedia.org/wiki/Standard_deviation

I suspect that spreadsheet equation is finding the standard deviation for the wanted life value. But I'm not sure how valid that equation is.
 
Hi lord,

thanks for your quick response!

to 1A: Might be possible too. Haven't thought about this from your point of view.

to 2A: Sorry, but I think my question was a little malformed. I am wondering if the calculation of engine wear in a Practice Session is not that aggressive than in a Race Session or vice versa ... ???

Yeah, my knowledge of such is limited too and I think it would be best if one of the ISI guys could clarify of how the engine wear is effected during a session driving around the track, or just do something like this:
Code:
struct TelemInfoV2 : public TelemInfoBase // for noobs: TelemInfoV2 contains everything in TelemInfoBase, plus the following:
{
  // state/damage info
  float mFuel;                   // amount of fuel (liters)
  float mEngineMaxRPM;           // rev limit
[B][COLOR="#FF0000"]  float mEngineHealth;           // for noobs who don't know jack ^^ 0.0 - 1.0 %[/COLOR][/B]
  unsigned char mScheduledStops; // number of scheduled pitstops
  bool  mOverheating;            // whether overheating icon is shown
  bool  mDetached;               // whether any parts (besides wheels) have been detached
  unsigned char mDentSeverity[8];// dent severity at 8 locations around the car (0=none, 1=some, 2=more)
  float mLastImpactET;           // time of last impact
  float mLastImpactMagnitude;    // magnitude of last impact
  TelemVect3 mLastImpactPos;     // location of last impact

  // Future use
  unsigned char mExpansion[64];

  // keeping this at the end of the structure to make it easier to replace in future versions
  TelemWheelV2 mWheel[4];        // wheel info (front left, front right, rear left, rear right)
};

:rolleyes:

Until then we only have the way of counting down the seconds depending on over temp & rev ... but as in real life you don't really know either when the engine is about to explode ... do you !?!?
 
I didn't know much about how rFactor handled the engine lifetime and learned a lot from that thread, thank you ! On the other hand, maybe I can help a bit with some of the math.

1) The linked formula is in line with the second post and seems to compute the second part of the LifetimeEngineRPM doublet, i.e. how much extra RPM will make the engine blow twice sooner. It gives negative results because the examples seem a bit silly, more RPM or more temperature leading to an increased lifetime !

2) When LifetimeVar is 0, if you make the AI drive you will see that the engine always blows up at more or less the same time. Making that time vary is what the LifetimeVar is for. The name (Var = variance) suggests that the blow-up time will follow a normal law, but from my tests I doubt that it is the case, because the engine seems to never blow up before LifetimeAvg-LifetimeVar is reached.

For instance, set the following and suppose we never exceed the RPM or temperature limits.

LifetimeAvg=20
LifetimeVar=5

- A normal law would mean that the blow-up time follows a bell curve (maybe somehow truncated in order to avoid negative lifetimes) with its maximum at 20 seconds ; in that case it is possible that the engine would blow up immediately.

- I think it is more likely that the law is simpler, like the following : the engine can blow up anytime between 15 and 25 seconds, with uniform probability (20 being no more probable than 15).

- A third possibility is that the interval is quite as large, with the hint that it would equate LifetimeVar with what statisticians call "first-order variance" (average of the gap to average). Then the engine would blow up anytime between 10 and 20 seconds.

I agree that it would be nice if the descriptions of the parameters would be more verbose.
 
The lifetime is a bell curve centered on the Avg value with a variance of Var.

The wear w.r.t. the either the RPM or oil temp follows the same curve above and below the given value. So in lordpansington's example in post #2 you'd have:

1300 0.125 Ws/s
1350 0.25 Ws/s
:
:

... and ...

78C 0.125 Ws/s
79C 0.25 Ws/s
:
:
 
First, thanks to Terence (and Bee). :)

And another question. Is the performance of the engine affected by the oil temp value?

Example: An engine with 100cv and an Optimal Oil Temp of 100º. If the temp is 95º (or 105º), the engine gives same 100cv or less?
 
Last edited:
Hi,
Im involved in a 24hrs endurance race, and in order to setup the car correlcty, I would like to know the following:

1.- If the optimal temperature of the engine is 100º, and you open the radiator so the engine is working at 90º, does it last longer, shorter or the same? about what percentage does it change in a 24hrs period?

2.- If the engine lifetime optimal settings is at 5800rpm, what (+-) percentaje 100rpm up or down make to the life engine over a 24hrs period?

I dont really understand all the values you are putting in the post, but I have these doubts. Would anyone be kind enough to answer it in very simple english so I can understand? :)

thanks in advance
 
Considering the optimal values you've listed:
If the temp variation is 10°, the wear from temp is halved.
If the rpm variation is 100 rpm, the wear from rpm is halved.
Because total wear is a combination of both those, you'd get double the life.
 
1st question: When I use MP2 the engine wear rate will be raised to +11.0% e.g. Assuming I stay below the 9000 RPM at all times during a race. With MP1 the normal wear rate is 0.5 second for each second driving the car around the track. Using MP2 adding 11.0% to the "normal" wear rate, would it be: (0.5s * 1.11%) for each second and I end up with a raised wear rate of 0.555 seconds for each second driving the car around the track, even if I stay below the 9000 RPM at all times ???

It just multiplies the existing wear. If you're well below the RPM and Oil damage points and getting 0.1s wear / second, that boost level will increase it to 0.1556. The boost effect is applied linearly per step, so you're right in multiplying 0.11 by 5 (rather than 1.11^5) - except in your example if you have 5 boost levels the first is 0, so maximum boost (5 in game) is actually using values multiplied by 4.

2nd question: Is the wear rate of the engine in a PRACTISE SESSION different to the wear rate in a RACE SESSION ???

Yes - sort of. It's much more random in practice. If you're testing engine life of a car (such as by running with accelerated time & wear) you should do it in a race session.

And another question. Is the performance of the engine affected by the oil temp value?

I haven't done an actual test on it, though it really shouldn't be that hard to figure out. But I noticed no performance (laptime) difference between an F1 mod with optimum oil temp of 130° and 110° with identical engine power, and there's no parameter to set the performance dropoff which leads me to think it doesn't actually do anything. Happy to be corrected on that though.

I dont really understand all the values you are putting in the post, but I have these doubts. Would anyone be kind enough to answer it in very simple english so I can understand? :)

Wear doesn't vary as a percentage of the total (so it's not about what effect a 1% drop in RPM or Oil temp does, for example). The engine has a damage range for both RPM and Oil so that's what you need to focus on. If the RPM range is 200, then each 200RPM above the damage point will double your RPM wear rate, while each 200RPM below will halve it. Same for the oil temp range - if it's 5°, then each 5° above the damage point will double the wear and below will halve it.

What this means, unfortunately (for modders), is that it's difficult to set appropriate values without a lot of testing and tweaking and quite often the 'engine lifetime' figure can look odd - I set up an F1 mod with a lifetime of 500 seconds, but the engines last a 2 hour race unless you abuse them (over temp or high RPM, such as rapid downshifting). Because both Oil temp and RPM are used for the calculations you can keep the engine very cool and make it last longer, even if you run high boost or high RPM, and in many mods there is very little penalty for doing so (I increased the radiator drag significantly to discourage it).

Overall it's not an area of rFactor I've ever felt was satisfactory, because both setting the values up as a modder and trying to work out where you're 'safe' as a driver both require laps and laps of testing. I'd be much happier if there was at least an adjustment for the damage rates above and below the damage point, so you can punish abuse without having conservative settings produce a bulletproof engine because of it.
 
Lazza and Lordpantsington, thank you both for the explanation. That I did understand and it helps a lot.

thanks!
 

Back
Top