Let's talk about new engine model (engine.ini)

Discussion in 'Car Modding' started by jtbo, Aug 9, 2012.

  1. Adrian

    Adrian Registered

    Joined:
    Dec 3, 2012
    Messages:
    383
    Likes Received:
    7
    I don't have that problem with TurboFriction=(0.001, 1.01) with it set to 10.001 I get about 25000 turbo RPM @ 6000 engine RPM and with it set to 100.001 i only get 2600 turbo RPM so it seems to be working for me.

    With the dump valve turned off we should be seeing the turbo speed jump up and down wildly when we lift off as a pressure wave bounces through the intercooler piping.

    Yes the first thing I did was try playing with the TurboInertia=0.00009 line and ended up dropping it to get the speed acting more like a real one. With a high inertia number it was even worse with the turbo staying spooled up, sort of acting like it had anti-lag. Maybe I should just add lots of backfire noises and leave it like that :cool:

    The more I play with this the more i'm sure that there's things missing that control transient spool and stuff like that. Maybe it will be added with the surge effects.


    I don't suppose anyone from ISI could tell us if where banging our heads against a wall trying to get something to work thats not there yet?

    Also turbo sounds will be in the .SFX linked to the eng someway, but unlike these turbo effects they must have been deleted instead of just // them out.
     
    Last edited by a moderator: Dec 5, 2012
  2. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Yes, first param. static friction works, but 2nd param. friction that ramps up with speed is not working.

    For example this does nothing different from default of example:
    TurboFriction=(0.001, 100.01)


    I have now however been quite succesful with my setups, every parameter seem to be doing quite much what I except them to do.

    For example if I want turbo to rapidly spool down, I can set wastegate and dump like this (just example, comments are what I currently guess, feel free to point errors):
    DumpValve=(5,100000,0.0000040) // open dump valve from slightest overpressure, closing, well I guess it is max pressure - 100000, but not so sure, it does close when pushing accelerator though, also I increased dumped amount 4 times of original.

    Wastegate=(-65000,0.0,40000,1.0) // start open wastegate when there is map 0.65 to max boost, 40000 is for closing, but this is confusing as one would think that when you set where valve starts open, that it automatically adjust opens and closes depending how far from that point pressure is, so can be different logic there.

    Anyway with those settings I can have higher inertia and still turbo spools down at rate that I would except.

    Then one important bit is turbine table parameters.

    Attached is turbine map with efficiency, rare thing, on that map efficiency is reported bit funny way, I guess it is so that efficiency of 1 would be 72%, but then again it is said that max is 72, so it gets confusing again, however not many that I have seen to have any efficiency data, so I did go just with 1 for 72%.

    There I get then max flow, efficiency and PR.


    LB/min needs to be converted to kg/s, online coverters are handy for that.

    I made 17 entries like this, reason to make 17 is because my excel formula calculates conversion from peak lbs/min to single step kg/s with 17 steps. I took max PR, (3.54 actually as I made some errors, dividing 16 or dividing 17, there I make always errors), that needed to be divided by step count and for each step I calculated previous step - PR of single step like for example 3.54 - 0.14, then next step 3.4 - 0.14, I'm sure there is better way to do that, just don't know what yet.
    TurbineFlowEffects=(1.0,0.26) //pr, efficiency
    ...
    TurbineFlowEffects=(3.54,0.68)

    So then take max flow, I think I used 27 for that graph, not too accurate at the moment as I'm just poking the model a bit, then convert it to kg/s, then divide max flow by 17 and put result 0.0119117647 to TurbineFlowTable=(0.0,0.0119117647), that is single step, meaning single line of turbinefloweffects.

    Compressor table is similar job, but there max velocity is one that is needed to be divided, then one needs to follow rpm line and for each 17 bins write PR value from compressor map.
    Also one needs to attempt to choose rpm step for compressortable so that it is easy to read from map, for example if I select 13000 for step, then next rpm is 26000, next from that is 39000 and so on, not very difficult, but very time consuming as maps generally don't have lines to full length, so one has to really estimate and draw those rpm lines and efficiency lines so that whole range of flow and pr numbers is covered.

    If I would have for example 55lb/min compressor max flow, single rpm line data would be something like this:
    CompressorPressRatio=(1.63, 1.65, 1.66, 1.67, 1.7, 1.7, 1.78, 1.82, 1.78, 1.25, 1.2, 1.1, 1, 1, 1, 1, 1)
    CompressorEfficiency=(0.26, 0.6, 0.63, 0.72, 0.74, 0.75, 0.72, 0.73, 0.7, 0.65, 0.55, 0.4, 0.3, 0.2, 0.1, 0, 0)

    1st value is for 1/17 of max flow, so I would need to read 3.2352941176lb/min point from map from that rpm line, no matter if it was drawn there or not, I need to somehow find out where on map that point would be and take PR number and efficiency number to that, then repeat for every value.

    I have great challenges with math, so my dividing to 17 parts can be wrong, it happens now and then.

    There would be need to make corrections to these values, if not in standard temp and standard pressure, I posted earlier wiki link to that I believe.

    Anyway, with those and good data, doing calcs precisely one should end up pretty close to something usable.

    If one does setup with two turbos, there is then this parameter:
    IntakeVolumePerRevolution=

    Instead of dividing displacement by 2, you need to divide by 4, because turbos share that volume. Staged setup would be different I believe, but I'm not quite sure if that is possible currently.

    Then there is added fun of trying to figure out multipliers for each engine rpm bin to get torque curve correct percentage lower as turbo code adds power to each, so one needs to calculate how much power is added and reduce power by that amount, which is not very simple, far less simple it is with all temperature effects and intercoolers in future. Basic theory is that twice the air and fuel, twice the power, but it does not go quite 1:1, especially when you include heat effects, there is different amount of oxygen in same volume of air, so one needs to take account all that to get it correct.

    Now I did read from plugin docs and samples that there actually is way to get power output with plugin, which would make things bit simpler in some ways, but there just is no such plugin currently available.

    But there is still many things to be learned to be able to have solid understanding of how to make turbo properly and relatively easily, as there always are easier ways to get job done.
     
  3. Adrian

    Adrian Registered

    Joined:
    Dec 3, 2012
    Messages:
    383
    Likes Received:
    7
    Sorry, thats what i get for not paying enough attention, yes this is the same with my setup as well.

    Yes this gets it spooling up slower and down faster, but with these values I found the speed to be reducing all the way to zero so something not quite right for my setup at least. Also the ultra fast on throttle spool is still there.

    Yes this is exactly what I have done also. I ended up with the results I expected so I guess this is the right way to do it. I'm going to go over my compressor map/s again to make sure I haven't miss-typed something in there causing a problem.

    Here is something you may be interested in http://www.motoiq.com/magazine_arti...-tech-compressor-and-turbine-map-details.aspx

    As an example of separate turbine efficiency at various speeds/more detailed than the one you posted(don't know if it helps in any way)
    [​IMG]
     
  4. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Eero gave me this link, might be some of use also.
    http://www.turbodriven.com/performanceturbos/matchbot.aspx?a=1

    How is your fuel/air mixture table set?
    FuelAirMixtureTable=(0.0, 0.1) // start and step size of fuel/air ratio (normalized relative to reference mixture) for following table:
    FuelAirMixtureEffects=(0.00, 0.00) // torque multiplier, exhaust gas temperature multiplier

    Exhaust gas temperature could have something to do with spool up.

    Also Skippy has MixtureFract=(0.931,0.944,0.95,0.955) instead of MixtureFract=(1), not quite certain if there should be some more settings made there for turbo cars.

    Then also RPMBase=(400, -7.5, 28.9, 0.55, 1), rpm, backtorque, torque, throttle, can't remember last one, chances are that I don't know what that last one is, but can't remember that either if I has known that or not.

    Anyway that throttle amount for given rpm can have some effect to how boost builds up and how turbo spools down, but this is so only if there are something else than 0 for that rpm range that is having issues.

    Those wastegate and dump valve values I posted are purely fictional and are just set big enough to make clear difference, I doubt that there can be real configuration with such values, but I like to test things with extremes, I feel then like scientist poking needles to brain tissue and see what will be effect, except my methods are purely unscientific random poking :)

    Either you get too little restriction to compression or too much effect from exhaust, let it be too much exhaust or too much spinning from exhaust.

    If you know pressure where wastegate should start open, then that is value needed to put into wastegate section, however if nothing helps, perhaps temporarily you can try and find value that does not limit upper end, but that does reduce spooling up at low end, but it is quite tedious hacking testing value after value.

    Missing intercooler effects could also be something to do with it as compressor can get pressure up easier.
     
  5. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Hmm, interesting, I did spy Formula 2 engine file and there is engine power multiplier I believe.

    Normally you have something like this:
    RPMBase=( 1400, -34.2, 134.6, 0.0, 1)

    However, if you alter that last 1 to less than 1, there is less power.

    Also I did spy that same multiplier was used for every rpm and that torque for rpm is torque from dyno sheet, or from equivalent source having full torque.

    How multiplier is achieved is however unknown to me, I get it close if I take boost pressure, for example 2.0 multiply that by peak efficiency, for example 0.7 and then divide torque by that, it gets close to what I get from multiplying torque by multiplier that is at end of line, but it is not quite the same and I think there is something more to it.
    Also reason why multiplier is same even for low rpm where there is no full boost, that is unknown to me and as I don't have torque curve from real Audi motor I can't tell if there has been changes made to low rpm to compensate this.

    Anyway, as there is that multiplier it can be used to adjust power relatively easy way, only issue is then how to get power without turbo or some multiplier of how much turbo adds power. I think there has to be some sort of calculations that try to address that.
     
  6. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Michael posted sound codes for turbo on another thread, I add them here so everyone that are working with turbo can find them:
     
  7. Knut Omdal Tveito

    Knut Omdal Tveito Registered

    Joined:
    Mar 16, 2012
    Messages:
    47
    Likes Received:
    3
    It's a pressure exponent actually. So if the intake pressure is different from the reference pressure the torque is multiplied by this factor:
    (Pressure/Reference_Pressure)^Pressure_Exponent
     
  8. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Thanks, hmm, maybe there is a way to somehow calculate that exponent.

    I get number above one with that formula, so it must be number used to divide torque, however I have not still be able to figure out how to end up with that value used, or maybe it is just a constant that is such always when turbo charging.


    I figured out how wastegate should be set, I try to explain best I can, but can be confusing, I get easily confused with these.

    Parameters you need to know are boost pressure, wastegate spring rating and in case using boost controller, you need to know how it is set.

    If you are going to use only wastegate spring, without any boost controller or limit pressure valves etc. Then you need to set wastegate to start open at normal air pressure, that is MAP 1.0

    So if you have 1 bar of boost, that is MAP 2.0 and you need to set 1st param to be 1bar less than your boost setting is, math is boost setting - reference pressure, so it is 1bar of boost (200 000 boost setting) - 100 000 (exact reference pressure is bit more actually, check it from top of engine file).
    Wastegate=(-100000,0.0,200000,1.0)

    If you have 2 bar of boost, then MAP is 3.0 and you need to set 1st param to be 2 bar less than your boost setting is 300 000 - 100 000.
    Wastegate=(-200000,0.0,200000,1.0) // minimum relative boost pressure (to desired), minimum wastegate opening, max relative pressure, max opening

    Note that it must be negative.

    Then you need to set 3rd parameter to rating of your wastegate spring.

    So if you have 1 bar boost and 1.5bar wastegate spring, you need to set 3rd parameter 0.5bar over the boost pressure, so setting it 50 000 means that it is reference pressure + 50 000 which is 1.5 bar roughly (150 000 in rfactor terms).
    Wastegate=(-100000,0.0,50000,1.0)

    For 2bar wastegate spring, it would be then 100 000.

    So values are from boost pressure, how much less and how much more. Because of how wastegate actuator spring works, it must be set like that, it starts to open right when there is pressure and is fully open at set spring rate. I guess size of wastegate is defined by how much it is opened, that is last parameter (1.0) in example, I think it is that 1.0 is able to flow 100% of exhaust, so no exhaust is propelling turbo when fully open, however in reality you have some size for wastegate, it can flow some amount and one needs to set that parameter accordingly. Of course one would need to know how much exhaust there is coming out from engine to be able to calculate max flow there is and then work out what fraction of that rated wastegate flow is.

    Now if you have limit pressure valve then (rajapaineventtiili in finnish, I really don't know if that is english equivalent).

    1st parameter need to be set to value of your valve is set to, again it is from set boost pressure setting, so that if you have valve that opens at 0.9 bar, you need to calculate it from your boost setting, 0.9 bar boost is 90 000, so your boost 100 000 - 90 000 (reference pressure) is formula for this. Result would be 10 000 and remember it must be negative.

    For 2 bar of boost and 1.9bar valve it would be 200 000 - 190 000 = 10 000 again, as it is again 0.1bar less than set boost pressure.

    Same for other boost controllers.

    3rd parameter sets point where wastegate is fully open and starts to close, with boost controller it is fairly small value as it is probably nearly same value as when wastegate opens, without boost controller completely different kind of values.

    Now important bit is dump valve, how much is dumped controls how much turbo slows down when you lift off throttle, if you have no dump valve, turbo is spinning really really long, maybe it is in vacuum of sorts? Shutting down of engine or engine braking makes it spool down even slower.

    So you really need to set dump valve so that it does dump and perhaps even need to set it bit agressive to not have too long spinning turbo issues.

    Maybe surge effects will then make turbo slow down faster without dump valve, but for now I think it might be good to use that to overcome that limitation.

    1st param, when it is smaller dump will open with less pressure difference (when you close throttle, between turbo and throttle there is lot of boost buildup and if turbo is set to 1bar boost, then 200 000 is value that is there when closing throttle from full boost at full throttle situation instantly), 2nd parameter is for closing then and should be less than 1st parameter as otherwise odd things may happen. 3rd parameter is how big dump valve is.
    DumpValve=(150000,120000,0.0000010) // throttle body pressure drop to fully open dump valve, same for fully closed, dump mass flow per Pascal.

    In theory this should be set to values dump valve of car you are making is set to, but that might result too quick spool up after a corner as turbo has not slowed down correct amount as it is spinning bit like in a vacuum while braking.

    I found values between 0.4 bar to 1 bar for opening, different springs cause different kind of opening and one has to careful not to mix spring rates or how much pressure valve can seal to actual opening because of pressure difference which is what rFactor wants, race cars might have higher values there.
     
    Pauli Partanen likes this.
  9. Eero Forsblom

    Eero Forsblom Registered

    Joined:
    Jan 14, 2012
    Messages:
    33
    Likes Received:
    1
    I think we still need to properly figure out what the last exponent in RPMBase=( 1400, -34.2, 134.6, 0.0, 1) really does. As I don´t believe it to a pressure exponent in the way that Knut posted.

    I´ve finally managed to make a few different turbos work pretty much as they work in reality. And it seems that the exponent is an "easy" way to figure out engines torque numbers when you don´t really have the output of a naturally aspirated version with _same_ hardware. But figuring out the real pressure exponent from a charged engine is pretty difficult. In a naturally aspirated engine this will always be really close to 1 and I believe that you can use 1 if you can get numbers form a n/a engine. Problem is that n/a versions usually have atleast different camshafts and higher compression ratio, so you´d need to dyno an engine without any boost.

    The FuelAirMixtureEffects and Table is also a big ? as it really can´t be the stoichiometric reference to 14.7:1 as it would only cover octane (for which lambda 1.0 would be 14.7/14.7) and the table would only cover values from lambda 10 to lambda 1 (AF/R 147:1 to 14:7), which doesn´t seem reasonable as an n/a engine would probably be everywhere between lambda 0.9 to lambda 1.2.

    the mixture should have a lot to do with EGT values, as leaner mixture would end up as higher exhaust temperatures which has a lot to do in how the turbo itself spools.

    I believe that it´s important to match the mixturefract to measured lambda values which will be indifferent to whatever you use as fuel. It could go as low as 0.69 (very rich) on some turbo cars.

    Another thing we need to focus on is the exhaust temperature values on the engine.ini. I´m not sure if the default values are in relation to the engine, or with turbo. I did notice that with the default values I got boost slightly too early compared to what I should´ve and the turbos choked a bit too aggressively => the EGT was rising too fast?

    I´m sorry about the tl:dr mess, as I´m tired and writing this in a haste during class..

    FYI, if you test with the GT35R it should spool relatively slow on a 2l engine with that humongous 1.06 A/R turbine they used on the F2. I´d figure ~5k+ rpm.
    I also modeled the Gt2554R and got it to work as it should, but it chokes a bit early on my test engine. IRL it should produce up to ~1.3-1.4bar and drop to 0.6-0.7bar around 5k on my car, but it just totally chokes @ 5k during testing and drops to ~0.1 bar.

    It also seems that if your temperature values are too high or you spool the turbo way over your compressor revolution chart you´ll still get as much boost as you ask and it will never choke, which is probably do to not having surge modeled. As JTBO said that is why you need to have dump and wastegate values properly set.
     
  10. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    It could be that I might have gone bit far though:


    Then again, some I have driven have got full boost only 2nd or 3rd gear and no any kind of boost controller or ecu, carb turbos, inventions of devil himself :D

    Yeah, if you go out of the chart it becomes self feeding machine and spins really fast, I think I got it once over 400 000.

    Also I had comment lines on top of engine file, not good with turbo, had to move them to end of file to engine to start working again, which was bit odd, but ok when one knows that.

    Mixture table, that last parameter, pressure exponent and then MixtureFract=(0.932,0.953,0.968,0.97) which is from skip barber's engine file, it is no longer (1) as before, so that needs to be figured out as well to be able to create accurate turbo I believe.

    Mixturestuff has quite big impact and I quite largely don't understand it yet. What little I thought I understood I have forgotten, must read this topic trough again, there was something about it earlier.
     
  11. Eero Forsblom

    Eero Forsblom Registered

    Joined:
    Jan 14, 2012
    Messages:
    33
    Likes Received:
    1
    ExhaustBaseProperties=(1000,1180,0.187,0.222,-0.0000335) // Kelvin, specific heat at constant pressure, delta per unit Kelvin, (k-1)/k (where k is the ratio between specific heats for constant pressure and constant temperature), delta per unit Kelvin

    Some simplification? I hope.

    first: base exhaust gas temperature? 1000 Kelvin

    2nd: Specific heat capacity at constant pressure for exhaust gas @ temperature mentioned on first (this is not linear, so that´s why we have to define it? = 1151 @ 1000Kelvin for dry air.

    3rd: ?? delta per kelvin, in relation to ?? pressure??

    4th: (k-1)/k || k = Heat capacity at constant pressure/heat capacity at constant volume and . Didn´t find exact values yet, but this will be different for different fuels. k=1.365 for air @ 1273K, but exhaust gas is mostly Nitrogen+water++ etc. I guess this could be found somewhere for different fuels. With air this value would be 0.267

    edit: found a link
    http://muhserv.atauni.edu.tr/makine/akifceviz/pdf_files/A/c.pdf PAGE 6!

    ~1.29 for exhaust gas @ lambda 1.0 = 0.225 (close enough?)

    5th: delta per unit Kelvin, specific heat in relation to pressure?. Looks legit according to:
    http://www.braeunig.us/space/pics/sample-K.gif
     
    Last edited by a moderator: Dec 10, 2012
  12. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
  13. Eero Forsblom

    Eero Forsblom Registered

    Joined:
    Jan 14, 2012
    Messages:
    33
    Likes Received:
    1
    EGT values will differ in relation to demand/revs/timing/mixture exhaust piping etc. I´d say 600-900 deg C' on gasoline? Lower with alcohols.
     
  14. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    EGT before or after turbo?

    I believe standard measure is after the turbo, but rFactor might want values before the turbo, to know how gases expand and how much to propel turbo.
     
  15. Eero Forsblom

    Eero Forsblom Registered

    Joined:
    Jan 14, 2012
    Messages:
    33
    Likes Received:
    1
    Those values should be before turbo if I'm correct. I've only seen sensors fitted straight to exhaust manifold, though I guess installing a sensor to extra lambda hole could be popular because it's so easy.
     
  16. Eero Forsblom

    Eero Forsblom Registered

    Joined:
    Jan 14, 2012
    Messages:
    33
    Likes Received:
    1
    I think I'll have to take back whatever i said about the pressure ratio exponent on RPMBase.

    I figured out my weird problems in getting boost either too early or too late. I tried this with 3 different engines an rb20det, that I made from stock engine with 0.5bar boost. (pr exponent was 0.75) a saab b204i that was n/a and I compensated for slightly less aggressive cams/compression ratio and used 1.0 as exponent in that one.. I tried to fiddle with everything, either spooling way too early or losing boost way too early considering the engine/turbo combo.

    I used the same turbo in all engines, as I knew that people had tried using GT35R on all engines and that it was slightly too large to be usable with that 1.06 turbine. All in all that turbo is just way too large for the engine, unless you raise the revlimit a lot.

    The only way to get the turbo spool at correct rpm's and retain otherwise normal function was to drop the exponent to around 0.6 like it was on the F2 engine, but then you lost a huge amount of power. The max torque in the F2 files was 409Nm, which clearly is from a dyno run with full boost. Yet the exponent is 0.57 on the whole range, which is impossible if it was about boost correction.

    I tried to figure out the RPMBase exponent again, but I´m lost.

    The values for F2 were 237500 requested pressure 101325 reference pressure.
    101325/237500 (pressure ratio) = 0.4266 which would make sense, but the value used in engine.ini is 0.57 || 1-0.4266=0.5734 but this is impossible as bigger requested boost would end up in values closer to1
     
    Last edited by a moderator: Dec 12, 2012
  17. BULIT

    BULIT Registered

    Joined:
    Jan 20, 2013
    Messages:
    26
    Likes Received:
    0
    Hello, pls i need create turbo for my car. But i dont have turbo values in my engine.ini. So do you post for example some complete line. Many Thanks..
     
  18. Adrian

    Adrian Registered

    Joined:
    Dec 3, 2012
    Messages:
    383
    Likes Received:
    7
    Code:
    // 2.0-liter, SOHC
    // 133hp @ 6000 RPM  175nm Torque@5000 rpm.  Rev limit 6500 rpm.
    // 4.5s 0-96km/h
    ReferenceConditions=(101325,1.225,0.073) // pressure (pascals), density (kg/m^3), fuel/air mass ratio, the presence of this line activates the new engine model
    RPMBase=(    0, -17.5, -17.5, 0.13, 1) // rpm, coast torque, reference max torque (assuming VolumeFract=1.0 & MixtureFract=1.0), idle function, pressure power
    VolumeFract=(0, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000) // maps accelerator position to fraction of combustion chamber filled with air, you can define a maximum resolution of 16 steps which are interpolated and distributed evenly
    MixtureFract=(0.93,0.9335,0.9355,0.9375) // maps accelerator position to fraction of reference fuel/air mixture ratio
    RPMBase=(  250, -15.9, -3.3, 0.103, 1)
    VolumeFract=(0, 0.975, 0.994, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000)
    MixtureFract=(0.931,0.944,0.95,0.955)
    RPMBase=(  500, -15.5, 55, 0.082, 1)
    VolumeFract=(0, 0.820, 0.890, 0.940, 0.958, 0.977, 0.995, 0.996, 0.998, 0.999, 0.999, 1.000, 1.000, 1.000, 1.000, 1.000)
    MixtureFract=(0.932,0.953,0.968,0.97)
    RPMBase=(  750, -16.2, 105, 0.063, 1)
    VolumeFract=(0, 0.530, 0.750, 0.870, 0.907, 0.944, 0.980, 0.986, 0.991, 0.997, 0.998, 0.999, 1.000, 1.000, 1.000, 1.000)
    MixtureFract=(0.933,0.961,0.975,0.98)
    RPMBase=( 1000, -17.0, 135, 0.025, 1)
    VolumeFract=(0, 0.340, 0.595, 0.790, 0.848, 0.906, 0.963, 0.973, 0.982, 0.992, 0.995, 0.997, 1.000, 1.000, 1.000, 1.000)
    MixtureFract=(0.934,0.968,0.985,0.99)
    RPMBase=( 1250, -17.9, 147, 0.016, 1)
    VolumeFract=(0, 0.230, 0.420, 0.600, 0.709, 0.817, 0.924, 0.943, 0.962, 0.980, 0.986, 0.993, 0.999, 0.999, 1.000, 1.000)
    MixtureFract=(0.935,0.974,0.99,0.995)
    RPMBase=( 1500, -18.8, 159, 0.012, 1)
    VolumeFract=(0, 0.160, 0.310, 0.460, 0.601, 0.741, 0.880, 0.910, 0.940, 0.970, 0.979, 0.989, 0.998, 0.999, 0.999, 1.000)
    MixtureFract=(0.936,0.98,0.995,0.997)
    RPMBase=( 1750, -19.8, 168, 0.009, 1)
    VolumeFract=(0, 0.134, 0.268, 0.400, 0.549, 0.699, 0.846, 0.885, 0.924, 0.963, 0.974, 0.985, 0.996, 0.997, 0.999, 1.000)
    MixtureFract=(0.937,0.986,0.997,0.998)
    RPMBase=( 2000, -20.8, 173, 0.006, 1)
    VolumeFract=(0, 0.122, 0.245, 0.365, 0.515, 0.664, 0.812, 0.860, 0.908, 0.956, 0.969, 0.981, 0.994, 0.996, 0.998, 1.000)
    MixtureFract=(0.938,0.991,0.998,0.999)
    RPMBase=( 2250, -21.8, 174, 0.004, 1)
    VolumeFract=(0, 0.114, 0.228, 0.340, 0.487, 0.633, 0.778, 0.836, 0.893, 0.950, 0.964, 0.977, 0.991, 0.994, 0.997, 1.000)
    MixtureFract=(0.939,0.995,0.999,1)
    RPMBase=( 2500, -22.9, 176, 0.003, 1)
    VolumeFract=(0, 0.105, 0.210, 0.313, 0.458, 0.602, 0.745, 0.813, 0.881, 0.948, 0.961, 0.974, 0.987, 0.991, 0.996, 1.000)
    MixtureFract=(0.94,0.997,1,1)
    RPMBase=( 2750, -24.0, 179, 0.002, 1)
    VolumeFract=(0, 0.097, 0.195, 0.291, 0.431, 0.572, 0.710, 0.785, 0.860, 0.934, 0.951, 0.968, 0.984, 0.989, 0.995, 1.000)
    MixtureFract=(0.941,0.998,1,1)
    RPMBase=( 3000, -25.1, 181.2, 0.001, 1)
    VolumeFract=(0, 0.090, 0.181, 0.270, 0.406, 0.543, 0.677, 0.758, 0.840, 0.920, 0.940, 0.961, 0.981, 0.987, 0.994, 1.000)
    MixtureFract=(0.942,0.999,1,1)
    RPMBase=( 3250, -26.3, 181, 0, 1)
    VolumeFract=(0, 0.084, 0.168, 0.250, 0.381, 0.511, 0.640, 0.727, 0.814, 0.900, 0.926, 0.952, 0.978, 0.985, 0.993, 1.000)
    MixtureFract=(0.943,1,1,1)
    RPMBase=( 3500, -27.5, 179, 0, 1)
    VolumeFract=(0, 0.077, 0.155, 0.231, 0.358, 0.484, 0.609, 0.700, 0.791, 0.880, 0.912, 0.944, 0.975, 0.983, 0.992, 1.000)
    MixtureFract=(0.944,1,1,1)
    RPMBase=( 3750, -28.7, 181, 0, 1)
    VolumeFract=(0, 0.072, 0.143, 0.214, 0.337, 0.460, 0.581, 0.674, 0.768, 0.860, 0.897, 0.934, 0.971, 0.981, 0.990, 1.000)
    MixtureFract=(0.945,1,1,1)
    RPMBase=( 4000, -29.9, 188, 0, 1)
    VolumeFract=(0, 0.067, 0.134, 0.200, 0.321, 0.441, 0.560, 0.654, 0.748, 0.840, 0.883, 0.925, 0.967, 0.978, 0.989, 1.000)
    MixtureFract=(0.946,1,1,1)
    RPMBase=( 4250, -31.2, 190.5, 0, 1)
    VolumeFract=(0, 0.063, 0.125, 0.187, 0.307, 0.427, 0.545, 0.640, 0.736, 0.830, 0.875, 0.919, 0.963, 0.975, 0.988, 1.000)
    MixtureFract=(0.947,1,1,1)
    RPMBase=( 4500, -32.5, 191.4, 0, 1)
    VolumeFract=(0, 0.059, 0.117, 0.175, 0.294, 0.412, 0.529, 0.626, 0.724, 0.820, 0.868, 0.916, 0.964, 0.976, 0.988, 1.000)
    MixtureFract=(0.948,1,1,1)
    RPMBase=( 4750, -33.8, 192, 0, 1)
    VolumeFract=(0, 0.056, 0.113, 0.168, 0.284, 0.400, 0.514, 0.613, 0.712, 0.810, 0.860, 0.910, 0.959, 0.973, 0.986, 1.000)
    MixtureFract=(0.949,1,1,1)
    RPMBase=( 5000, -35.1, 192.4, 0, 1)
    VolumeFract=(0, 0.055, 0.109, 0.163, 0.275, 0.387, 0.498, 0.599, 0.700, 0.800, 0.852, 0.903, 0.954, 0.969, 0.985, 1.000)
    MixtureFract=(0.95,1,1,1)
    RPMBase=( 5250, -36.5, 190.2, 0, 1)
    VolumeFract=(0, 0.053, 0.107, 0.159, 0.270, 0.381, 0.490, 0.591, 0.691, 0.790, 0.843, 0.897, 0.949, 0.966, 0.983, 1.000)
    MixtureFract=(0.951,1,1,1)
    RPMBase=( 5500, -37.9, 187.2, 0, 1)
    VolumeFract=(0, 0.052, 0.105, 0.156, 0.265, 0.373, 0.480, 0.581, 0.681, 0.780, 0.835, 0.889, 0.943, 0.962, 0.981, 1.000)
    MixtureFract=(0.952,1,1,1)
    RPMBase=( 5750, -39.3, 180.4, 0, 1)
    VolumeFract=(0, 0.051, 0.103, 0.153, 0.259, 0.365, 0.470, 0.571, 0.671, 0.770, 0.826, 0.882, 0.937, 0.958, 0.979, 1.000)
    MixtureFract=(0.953,1,1,1)
    RPMBase=( 6000, -40.7, 173.3, 0, 1)
    VolumeFract=(0, 0.050, 0.101, 0.150, 0.254, 0.358, 0.460, 0.561, 0.661, 0.760, 0.818, 0.876, 0.933, 0.955, 0.978, 1.000)
    MixtureFract=(0.954,1,1,1)
    RPMBase=( 6250, -42.1, 165.9, 0, 1)
    VolumeFract=(0, 0.049, 0.098, 0.147, 0.250, 0.353, 0.454, 0.554, 0.654, 0.753, 0.812, 0.870, 0.928, 0.952, 0.976, 1.000)
    MixtureFract=(0.955,1,1,1)
    RPMBase=( 6500, -43.6, 157.7, 0, 1)
    VolumeFract=(0, 0.048, 0.096, 0.144, 0.247, 0.350, 0.452, 0.551, 0.651, 0.749, 0.808, 0.868, 0.926, 0.951, 0.976, 1.000)
    MixtureFract=(0.956,1,1,1)
    RPMBase=( 6750, -45.0, 149, 0, 1)
    VolumeFract=(0, 0.048, 0.095, 0.142, 0.245, 0.348, 0.449, 0.548, 0.647, 0.745, 0.805, 0.865, 0.924, 0.949, 0.975, 1.000)
    MixtureFract=(0.957,1,1,1)
    RPMBase=( 7000, -46.5, 142.5, 0, 1)
    VolumeFract=(0, 0.047, 0.094, 0.140, 0.243, 0.345, 0.446, 0.545, 0.644, 0.741, 0.802, 0.862, 0.922, 0.948, 0.974, 0.999)
    MixtureFract=(0.958,1,1,1)
    RPMBase=( 7250, -48.0, 136.5, 0, 1)
    VolumeFract=(0, 0.046, 0.092, 0.138, 0.240, 0.342, 0.443, 0.541, 0.640, 0.737, 0.798, 0.860, 0.920, 0.946, 0.972, 0.998)
    MixtureFract=(0.959,1,1,1)
    RPMBase=( 7500, -49.5, 126, 0, 1)
    VolumeFract=(0, 0.046, 0.091, 0.136, 0.238, 0.340, 0.440, 0.538, 0.636, 0.733, 0.795, 0.857, 0.918, 0.944, 0.971, 0.997)
    MixtureFract=(0.96,1,1,1)
    RPMBase=( 7750, -51.1, 111.6, 0, 1)
    VolumeFract=(0, 0.045, 0.090, 0.134, 0.236, 0.337, 0.437, 0.535, 0.633, 0.729, 0.792, 0.854, 0.916, 0.942, 0.969, 0.995)
    MixtureFract=(0.961,1,1,1)
    RPMBase=( 8000, -52.6, 96.8, 0, 1)
    VolumeFract=(0, 0.044, 0.088, 0.132, 0.233, 0.334, 0.434, 0.531, 0.629, 0.725, 0.788, 0.852, 0.914, 0.940, 0.966, 0.992)
    MixtureFract=(0.962,1,1,1)
    RPMBase=( 8250, -54.2, 81.4, 0, 1)
    VolumeFract=(0, 0.044, 0.087, 0.130, 0.231, 0.332, 0.431, 0.528, 0.625, 0.721, 0.785, 0.849, 0.912, 0.936, 0.960, 0.984)
    MixtureFract=(0.963,1,1,1)
    RPMBase=( 8500, -55.7, 66, 0, 1)
    VolumeFract=(0, 0.043, 0.086, 0.128, 0.229, 0.329, 0.428, 0.525, 0.622, 0.717, 0.782, 0.846, 0.910, 0.929, 0.949, 0.968)
    MixtureFract=(0.964,1,1,1)
    RPMBase=( 8750, -57.3, 49.5, 0, 1)
    VolumeFract=(0, 0.042, 0.084, 0.126, 0.226, 0.326, 0.425, 0.521, 0.618, 0.713, 0.778, 0.844, 0.908, 0.917, 0.927, 0.936)
    MixtureFract=(0.965,1,1,1)
    RPMBase=( 9000, -58.9, 33, 0, 1)
    VolumeFract=(0, 0.042, 0.083, 0.124, 0.224, 0.324, 0.422, 0.518, 0.614, 0.709, 0.775, 0.841, 0.906, 0.895, 0.883, 0.872)
    MixtureFract=(0.966,1,1,1)
    RPMBase=( 9250, -60.5, 11, 0, 1)
    VolumeFract=(0, 0.041, 0.082, 0.122, 0.221, 0.321, 0.419, 0.515, 0.611, 0.705, 0.772, 0.838, 0.904, 0.850, 0.797, 0.744)
    MixtureFract=(0.967,1,1,1)
    FuelConsumption=2.900e-05         // affected by throttle position and engine speed
    FuelEstimate=1.018                // fudge factor for differences between vehicle types (used for lap estimates and AI pit scheduling)
    FuelDensity=0.74                  // kg/liter
    FuelAirMixtureTable=(0.0, 0.1)    // start and step size of fuel/air ratio (normalized relative to reference mixture) for following table:
    FuelAirMixtureEffects=(0.00, 0.00) // torque multiplier, exhaust gas temperature multiplier
    FuelAirMixtureEffects=(0.10, 0.11)
    FuelAirMixtureEffects=(0.20, 0.22)
    FuelAirMixtureEffects=(0.30, 0.33)
    FuelAirMixtureEffects=(0.40, 0.44)
    FuelAirMixtureEffects=(0.50, 0.55)
    FuelAirMixtureEffects=(0.60, 0.66)
    FuelAirMixtureEffects=(0.70, 0.77)
    FuelAirMixtureEffects=(0.80, 0.88)
    FuelAirMixtureEffects=(0.89, 0.99)
    FuelAirMixtureEffects=(0.98, 1.00)
    FuelAirMixtureEffects=(1.00, 0.97)
    FuelAirMixtureEffects=(0.97, 0.90)
    FuelAirMixtureEffects=(0.85, 0.80)
    FuelAirMixtureEffects=(0.65, 0.60)
    FuelAirMixtureEffects=(0.40, 0.40)
    FuelAirMixtureEffects=(0.10, 0.10)
    FuelAirMixtureEffects=(0.00, 0.00)
    EngineInertia=0.092
    IdleRPMLogic=(800, 980)           // anti-stall clutch logic, values should be slightly lower than actual idle RPM
    LaunchEfficiency=0                // efficiency (0.0-1.0) of launch control, or 0.0 if N/A
    LaunchRPMLogic=(5000, 6400)       // holds RPM in this range before launch (used for AI even if launch control is N/A!)
    LaunchVariables=0                 // level of traction control used (0-3) and whether auto-upshifting is enabled (add 4); default=7
    RevLimitRange=(6500, 50, 1)
    RevLimitSetting=0
    RevLimitLogic=0                   // RPM range around current setting where *soft* rev limiter operates (either this or RevLimitTime should probably be zero)
    RevLimitHardTime=0.1              // Hard rev-limiter ignition cut time (either this or RevLimitLogic should probably be zero)
    EngineMapRange=(0, 1, 1)          // 0 = most driveable, max = most power (low gears only) (unimplemented)
    EngineMapSetting=0
    EngineBoostRange=(0, 0, 1)
    EngineBoostSetting=0
    BoostEffects=(0.0, 0.00, 0.052)   // RPM increase per setting, fuel increase (1%) per setting, engine wear rate (5.2%) per setting
    BoostTorque=0.12                  // fraction torque per setting (applies to all RPMs)
    BoostPower=0.0003                 // fraction horsepower per setting
    EngineBrakingMapRange=(0, 5.0e-4, 1) // input throttle is ranged from minimum to 100%, with the minimum = setting * step * RPM
    EngineBrakingMapSetting=0         // default is 1 * 0.0005 * 6000 RPM = 3.0% applied throttle at zero input throttle
    OptimumOilTemp=98.0               // degrees Celsius at which engine operates optimally
    CombustionHeat=29.5               // degrees Celsius added per liter of fuel burned
    EngineSpeedHeat=7.78e-04          // heat added linearly with engine speed
    OilMinimumCooling=7.40e-03        // heat dissipated without oil/water transfer
    OilWaterHeatTransfer=(0.014, 8.1e-5) // heat transfer from oil to water (base, w/ engine speed)
    WaterMinimumCooling=4.50e-03      // base heat dissipated without velocity
    RadiatorCooling=(3.8e-6, 3.51e-6) // cooling rate with velocity (base, per setting)
    LifetimeEngineRPM=(6200, 250)     // (base engine speed for lifetime, range where lifetime is halved)
    LifetimeOilTemp=(109.5, 4.1)      // (base oil temp for lifetime, range where lifetime is halved)
    LifetimeAvg=14000                 // average lifetime in seconds
    LifetimeVar=5000                  // lifetime random variance
    EngineEmission=(0.0, 0.55,-0.27)  // where flames and smoke are emitted (relative to ref frame at rear axle)
    EngineSound=( 0.0, 0.50,-0.40)    // where engine sound is emitted (relative to ref frame at rear axle)
    SpeedLimiter=0                    // whether there is a pitlane speed limiter
    OnboardStarter=1                  // whether vehicle restarts when stalled
    StarterTiming=(0.1, 0.1, 3.4)     // average and variable cranking time, then blend with starting sound
    RamCenter=(0.00, 0.600,-0.720)    // location of ram air intake
    RamDraftMult=10.0                 // multiplier for effect that draft has on ram air velocity
    RamPressure=(0.0,0.000004)        // speed (m/s) to ambient pressure mult, speed squared (m/s)^2 to ambient pressure mult
    //TurboInertia=0.0002             // you can actually have two turbos, each one starts with this line
    //TurboFriction=(0.001,1.01)      // torque (Nm, constant at any speed), power (W, ramps up linearly with speed)
    //TurboStaticFrictionWatts=100    // static friction prevents numerical problems at low spool speeds
    //TurbineFlowTable=(0.0,0.0075)   // corrected flow (kg/s corrected to standard temperature and pressure)
    //TurbineFlowEffects=(1,0.52)     // pressure ratio, efficiency
    //TurbineFlowEffects=(1.02,0.53)
    //TurbineFlowEffects=(1.06,0.55)  // etc. ... eventually basically reaches a peak PR while the efficiency drops back down
    IntakeVolumePerRevolution=0.9   // basically the displacement divided by two for a normal four-stroke engine
    ExhaustBaseProperties=(1175,1180,0.187,0.222,-0.0000335) // Kelvin, specific heat at constant pressure, delta per unit Kelvin, (k-1)/k (where k is the ratio between specific heats for constant pressure and constant temperature), delta per unit Kelvin
    CompressorTable=(25000,0.0302) // spool RPM step, corrected flow step (kg/s corrected to standard temperature and pressure)
    // data along 0 RPM compressor map speed line:
    CompressorPressRatio=(1) // nothing going on at 0 RPM
    CompressorEfficiency=(0) // probably not much efficiency at 0 RPM either
    CompressorSurgeLineFlow=0 // defining this is optional (and surge effects aren't currently implemented)
    // data along 25,000 RPM compressor map speed line:
    CompressorPressRatio=(1.116, 1.115, 1.095, 1.066, 1.035, 1.001, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) // per corrected flow
    CompressorEfficiency=(0.25, 0.45, 0.59, 0.45, 0.40, 0.35, 0.30, 0.25, 0.20, 0.15, 0.10, 0.05, 0.00, 0.00, 0.00, 0.00) // per corrected flow
    CompressorSurgeLineFlow=0.019
    // data along 50,000 RPM compressor map speed line:
    CompressorPressRatio=(1.31, 1.325, 1.325, 1.31, 1.275, 1.23, 1.17, 1.1, 1.015, 1, 1, 1, 1, 1, 1, 1, 1)
    CompressorEfficiency=(0.28, 0.5, 0.61, 0.71, 0.74, 0.68, 0.58, 0.47, 0.4, 0.35, 0.25, 0.15, 0.05, 0, 0, 0, 0)
    CompressorSurgeLineFlow=0.037
    // data along 75,000 RPM compressor map speed line:
    CompressorPressRatio=(1.68, 1.705, 1.72, 1.73, 1.73, 1.71, 1.66, 1.6, 1.495, 1.35, 1.14, 1, 1, 1, 1, 1, 1)
    CompressorEfficiency=(0.26, 0.45, 0.55, 0.65, 0.7, 0.75, 0.775, 0.765, 0.68, 0.6, 0.45, 0.3, 0.2, 0.1, 0, 0, 0)
    CompressorSurgeLineFlow=0.058
    // data along 100,000 RPM compressor map speed line:
    CompressorPressRatio=(2.17, 2.2, 2.23, 2.27, 2.31, 2.34, 2.36, 2.36, 2.33, 2.25, 2.12, 1.91, 1.53, 1.05, 1, 1, 1)
    CompressorEfficiency=(0.25, 0.33, 0.38, 0.46, 0.53, 0.605, 0.69, 0.75, 0.765, 0.775, 0.75, 0.65, 0.45, 0.23, 0.11, 0, 0)
    CompressorSurgeLineFlow=0.08
    // data along 125,000 RPM compressor map speed line:
    CompressorPressRatio=(3.26, 3.28, 3.31, 3.33, 3.34, 3.35, 3.36, 3.35, 3.33, 3.3, 3.25, 3.17, 2.97, 2.5, 1.58, 1.01, 1)
    CompressorEfficiency=(0.24, 0.3, 0.36, 0.55, 0.58, 0.61, 0.63, 0.65, 0.665, 0.68, 0.7, 0.715, 0.68, 0.6, 0.49, 0.25, 0)
    CompressorSurgeLineFlow=0.104
    // data along 150,000 RPM compressor map speed line:
    CompressorPressRatio=(4.22, 4.24, 4.26, 4.29, 4.32, 4.34, 4.36, 4.36, 4.35, 4.33, 4.28, 4.23, 4.1, 3.81, 3.16, 2.05, 1)
    CompressorEfficiency=(0.23, 0.29, 0.35, 0.47, 0.49, 0.51, 0.53, 0.55, 0.56, 0.57, 0.58, 0.59, 0.6, 0.58, 0.5, 0.33, 0)
    CompressorSurgeLineFlow=0.13
    //TurboTestSpeedMult=12.0 // dev-only test variable sets turbo speed to the given multiple of the current engine speed at all times
    BoostTurboPressure=(200000,50000) // base desired boost pressure, multiplier by EngineBoost setting
    WastegateBoostMeasurement=1 // 0=intake manifold, 1=pre-throttle (this is the default), no other choices at this time
    Wastegate=(-1500,0.0,1500,1.0) // minimum relative boost pressure (to desired), minimum wastegate opening, max relative pressure, max opening
    IntakeLeak=1e-7
    DumpValve=(150000,120000,0.0000010) // throttle body pressure drop to fully open dump valve, same for fully closed, dump mass flow per Pascal
    
     
  19. BULIT

    BULIT Registered

    Joined:
    Jan 20, 2013
    Messages:
    26
    Likes Received:
    0
    Thanks you Adrian.
     
  20. Kickbox

    Kickbox Registered

    Joined:
    Jul 9, 2012
    Messages:
    169
    Likes Received:
    30
    I have edited some values from the 1.02 corvette. The max HP now at 1200, rpm limiter to 9000 and in the ClutchTorque from 790 to 1790. But now the "Mod is damage".
    Why? Is there a checksume?
     

Share This Page