default `Coolant Temperature Boost Multiplier` and `Intake Air Temperature Boost Multiplier` curves and their validation #6424

This commit is contained in:
kifir 2024-07-26 18:09:06 +03:00
parent fd5888aaf5
commit edfdf04e47
2 changed files with 12 additions and 2 deletions

View File

@ -251,14 +251,18 @@ namespace {
float * const values,
const int size,
const float defaultValue,
const float initialTemperature = -40,
const float temperatureStep = 10
const float initialTemperature = -40.0f,
const float temperatureStep = 10.0f
) {
for (int i = 0; i < size; i++) {
bins[i] = initialTemperature + i * temperatureStep;
values[i] = defaultValue; // this correction is a multiplier
}
}
void initBoostTemperatureCurve(float* const bins, float* const values) {
initTemperatureCurve(bins, values, BOOST_CURVE_SIZE, 1.0f, 20.0f, 20.0f);
}
}
#endif // EFI_ENGINE_CONTROL
@ -486,6 +490,9 @@ static void setDefaultEngineConfiguration() {
initTemperatureCurve(IAT_FUEL_CORRECTION_CURVE, 1);
initBoostTemperatureCurve(config->cltBoostCorrBins, config->cltBoostCorr);
initBoostTemperatureCurve(config->iatBoostCorrBins, config->iatBoostCorr);
engineConfiguration->alternatorControl.minValue = 0;
engineConfiguration->alternatorControl.maxValue = 90;

View File

@ -558,6 +558,9 @@ bool validateConfigOnStartUpOrBurn() {
ensureArrayIsAscending("Fuel CLT mult", config->cltFuelCorrBins);
ensureArrayIsAscending("Fuel IAT mult", config->iatFuelCorrBins);
ensureArrayIsAscendingOrDefault("Boost CLT mult", config->cltBoostCorrBins);
ensureArrayIsAscendingOrDefault("Boost IAT mult", config->iatBoostCorrBins);
ensureArrayIsAscending("Injection phase load", config->injPhaseLoadBins);
ensureArrayIsAscending("Injection phase RPM", config->injPhaseRpmBins);