Actually I may have sent it to you back in the day Bryan? Again memory isn't what it used to be - that's for damn sure.
I did find this, which sorta I guess has a few different ways in it - This was posted way back when - couldn't find the original post, but I know it was updated to refer back to Smoke's to average them together...
There are several ways to calculate (approximated = assuming some fixed ratio between IAT and ECT) GMVE.
These are the formulas I've been using with 2.24 version, but I haven't done the conversion to 3.x series variable names yet.
I took me a while to gather all the pieces from here and there (thanks Marcin for your work) to be able to update the GMVE table from almost any log with correct filtering.
Calculated GMVE (from Dynamic Airflow)
[PID.2320]/([SENS.70]/15*0.875*[SENS.30]/0.28705/(273.15+[SENS.11]))*875/0.28705
GM Volumetric Efficiency = Dynamic Airflow[g/s] / ( RPM[1/min]/15 * Displacement[l] * MAP[kPa] / 0.28705 / (273.15 + IAT[C]) ) * Displacement[cm3] / 0.28705
[PID.2320]*(273.15+[SENS.11])*1000*15/([SENS.70]*[SENS.30])
GM Volumetric Efficiency = Dynamic Airflow[g/s] * (273.15 + IAT[C]) * 1000 * 15 / ( RPM[1/min] * MAP[kPa] )
Calculated GMVE (from MAF)
[SENS.40]/([SENS.70]/15*0.875*[SENS.30]/0.28705/(273.15+[SENS.11]))*875/0.28705
GM Volumetric Efficiency = Mass Air Flow[g/s] / ( RPM[1/min]/15 * Displacement[l] * MAP[kPa] / 0.28705 / (273.15 + IAT[C]) ) * Displacement[cm3] / 0.28705
[SENS.40]*(273.15+[SENS.11])*1000*15/([SENS.70]*[SENS.30])
GM Volumetric Efficiency = Mass Air Flow[g/s] * (273.15 + IAT[C]) * 1000 * 15 / ( RPM[1/min] * MAP[kPa] )
Calculated GMVE (from cylAir which is derived from Dynamic Airflow)
[PID.2321]*(273.15+[SENS.11])*1000/[SENS.30]
GM Volumetric Efficiency = Cylinder Airmass[g] * (273.15 + IAT[C]) * 1000 / MAP[kPa]
Calculated GMVE (from WBo2)
([PID.6200]+[PID.6201])/2000*[PID.6210]*[AUX.20121]*(273.15+[SENS.11])*1000/[SENS.30]
GM Volumetric Efficiency = (InjectorPW_B1[ms] + InjectorPW_B2[ms]) / 2000 * InjectorFlowRate[g/s] * WideBandO2AFR * (273.15 + IAT[C]) * 1000 / MAP[kPa]
([PID.6200]+[PID.6201])/2000*[PID.6210]*[AUX.20122]*[PID.6001]*[PID.68]*(273.15+[SENS.11])*1000/[SENS.30]
GM Volumetric Efficiency = (InjectorPW_B1[ms] + InjectorPW_B2[ms]) / 2000 * InjectorFlowRate[g/s] * WideBandO2Lambda * CommandedAFRHiRes * CommandedEQRatio * (273.15 + IAT[C]) * 1000 / MAP[kPa]
([PID.6200]+[PID.6201])/2000*[PID.6210]*[AUX.20122]*[SENS.121]*[PID.68]*(273.15+[SENS.11])*1000/[SENS.30]
GM Volumetric Efficiency = (InjectorPW_B1[ms] + InjectorPW_B2[ms]) / 2000 * InjectorFlowRate[g/s] * WideBandO2Lambda * CommandedAFR * CommandedEQRatio * (273.15 + IAT[C]) * 1000 / MAP[kPa]
Depending on the mode (OL or CL, SD, Hybrid or MAF only) it is necessary to choose the best suited calculation method. Generally cylAir gives the best quality but I have used alsThe math:
GMVE STFT % error = ((MAF_af)*(1+(STFT_avg)/100)-(GMVE_af))/(GMVE_af)*100
(([16.71]*(1+(.01*[6.156]+.01*[8.156])/2)-[12.56]/60*4*[11.92]*[2312]/[2127.240])/([12.56]/60*4*[11.92]*[2312]/[2127.240]))*100
https://forum.hptuners.com/showthrea...ation-for-gen4o an average of all four.