This document summarizes the process which utilized EPA's laboratory engine dynamometer and chassis dynamometer test data to generate a full engine fuel consumption map which can be used by EPA's ALPHA vehicle simulations. The generated full engine map defines the complete operating boundaries of the engine which are needed for REVS modeling including idle, WOT, minimum torque, and maximum speed.
SUGGESTED CITATION:
2014 Mazda 2.0L SKYACTIV Engine Tier 2 Fuel - ALPHA Map Package. Version 2018-02. Ann Arbor MI: US EPA National Vehicle and Fuel Emissions Laboratory, National Center for Advanced Technology, 2018.
Engine Physical Characteristics
Set physical characteristics based on published information: 2014 Mazda3 4-Door. (n.d.) Retrieved May 11, 2017, from https://www.mazdausa.com/MusaWeb/musa2/pdf/specs/specs_M3S.pdf
engine.name = '2014 Mazda 2.0L SKYACTIV Engine Tier 2 Fuel';
engine.combustion_type = enum_engine_combustion_type.spark_ignition;
engine.displacement_L = 1.998;
engine.num_cylinders = 4;
engine.bore_mm = 83.5;
engine.stroke_mm = 91.2;
Test Data
Import engine dynamometer test data from "2014 Mazda 2.0L SKYACTIV-G Engine Tier 2 Fuel - Test Data Package. Version 2018-02. Ann Arbor, MI: US EPA, National Vehicle and Fuel Emissions Laboratory, National Center for Advanced Technology, 2018."
core_data = readtable2( '4- 2014 Mazda 2.0L SKYACTIV-G Engine Tier 2 Fuel - Test Data.xlsx','Sheet','Steady State', 'VariableNamesRange',4,'VariableUnitsRange',5,'DataRange',6); test_data.name = 'Test Data'; test_data.speed_rpm = core_data.Speed; test_data.torque_Nm = core_data.Torque; test_data.fuel_gps = core_data.FuelMeterFlow;
Estimated Points
Add estimated fueling points to approximate the portions of the map where data is not available.
% High Speed estimated_data.name = 'Estimated High Load Points'; estimated_data.speed_rpm = [ 5500, 5500, 5500, 5500, ]; estimated_data.torque_Nm = [ 20, 100, 150, 180, ]; estimated_data.bsfc_gpkWhr = [ 550, 270, 260, 315, ];
Maximum Torque (WOT) Curve Data
Import EPA wide open throttle engine dynamometer sweep test data included in the Engine Test Data referenced above, excluding lead in and lead out points where operation is not at maximum torque. Additional data to extend beyond the available test data is included based on Mazda3 vehicle specification referenced above.
core_data = readtable2('4- 2014 Mazda 2.0L SKYACTIV-G Engine Tier 2 Fuel - Test Data.xlsx','Sheet','Max Torque Sweep', 'VariableNamesRange',4,'VariableUnitsRange',5,'DataRange',6); WOT_test_data.speed_rpm = core_data.Speed; WOT_test_data.torque_Nm = core_data.Torque; WOT_estimated_data.speed_rpm = [6000, 6250]; WOT_estimated_data.torque_Nm = [184, 160];
Minimum Torque (Zero Accelerator Pedal) Curve Data
Import EPA zero accelerator pedal engine dynamometer test data included in the Engine Test Data referenced above, excluding data points where significant fuel flow was measured.
core_data = readtable2('4- 2014 Mazda 2.0L SKYACTIV-G Engine Tier 2 Fuel - Test Data.xlsx','Sheet','Min Torque Sweep', 'VariableNamesRange',4,'VariableUnitsRange',5,'DataRange',6); CT_test_data.speed_rpm = core_data.Speed(core_data.Speed > 1400); CT_test_data.torque_Nm = core_data.Torque(core_data.Speed > 1400);
Fuel Properties
Load fuel properties provided in the Fuel Analysis Report identified in the Engine Test Data package referenced above.
%Load from fuel database engine.fuel = class_REVS_fuel( 'FTAG 23945'); disp( engine.fuel );
class_REVS_fuel with properties: id: 'FTAG 23945' description: 'Tier 2 Cert' density_kgpL_15C: 0.743 energy_density_MJpkg: 42.887 carbon_weight_fraction: 0.86678 research_octane_number: 97.1 motor_octane_number: 88.2 alcohol_pct_vol: 0 gCO2pgal: 8932.8 energy_density_BTUplbm: 18438 specific_gravity: 0.74371
Idle Speed
Set idle speed using EPA chassis dynamometer testing data from the 2014 Mazda3 with an automatic transmission; EPA published report pending.
engine.idle_speed_radps = class_REVS_dynamic_lookup;
engine.idle_speed_radps.axis_1.signal = 'veh_spd_mps';
engine.idle_speed_radps.axis_1.breakpoints = [ 0, 1 ];
engine.idle_speed_radps.table = [ 600, 800 ] * convert.rpm2radps;
Engine Build for Simulation in ALPHA
Construct the ALPHA Full engine map combining all of the above inputs. Fit the fueling data onto a grid for simple interpolation and establish points that represent the maximum and minimum engine torque versus speed. Confirm the quality of fit between the input data and the resulting engine description by examining the resulting plots.
engine = REVS_build_engine(engine, {test_data, estimated_data}, 'WOT',{WOT_test_data, WOT_estimated_data}, 'CT', CT_test_data, 'plot_bsfc','plot_efficiency');
Idle Fuel Verification
Confirm appropriate fuel consumption near idle conditions. The following conditions represent idle with the transmission in neutral and drive. The speeds and fuel flow agree with measurements recorded on this engine. However, in general, idle speeds and fueling depend on the drivetrain the engine is coupled to and may change depending on the application.
% Idle @ 600 RPM in neutral measured fuel rate ~0.15 g/sec engine.interp_fuel_gps( 600 * convert.rpm2radps, 15); % Idle @ 700 RPM in gear measured fuel rate ~0.21 g/sec engine.interp_fuel_gps( 700 * convert.rpm2radps, 24);
0.14767 0.20672
Fuel Map Linearity
Confirm expected trends in output fuel map, specifically in regions where test data is unavailable.
REVS_plot_engine_fuel_linearity(engine)
Model Calibration Options
Calibrate additional properties of the ALPHA engine model which can be set to match observed behaviors during the validation process.
Note: Default values are used unless properties are specified below, which are derived from the composite set of EPA testing and model validation activities.
Accelerator Pedal Map
Apply default pedal mapping for passenger cars, which will linearly increase engine power with accelerator pedal position.
engine.pedal_map_type = enum_engine_pedal_map_type.max_engine_power;
File Description
Generate and write the created ALPHA engine definition into a file for later simulation.
write_REVS_engine( 'engine_2014_Mazda_Skyactiv_2L0_Tier2.m', engine);
Build Full Engine Map: engine_2014_Mazda_Skyactiv_2L0_Tier2.m
% ALPHA ENGINE DEFINITION % Generated 12-Feb-2018 15:33:18 % Constructor engine = class_REVS_engine(); engine.name = '2014 Mazda 2.0L SKYACTIV Engine Tier 2 Fuel'; engine.source_filename = mfilename;engine.matrix_vintage = enum_matrix_vintage.present; % Physical Description engine.displacement_L = 1.998; engine.num_cylinders = 4; engine.combustion_type = enum_engine_combustion_type.spark_ignition; engine.bore_mm = 83.5; engine.stroke_mm = 91.200000000000003; % Maximum Torque Curve engine.full_throttle_speed_radps = [ 0.00000000000000000, ; 105.99487213788150, ; 125.94599417913167, ; 136.28306501461500, ; 157.03475278443838, ; 177.96972782936007, ; 199.01855204395031, ; 209.47441682435942, ; 230.36949862923555, ; 251.37322718004830, ; 282.83448379512998, ; 313.92800923309005, ; 345.67535861716561, ; 356.10551127040986, ; 398.06127018523597, ; 429.36595595562210, ; 469.44657915276707, ; 628.31853071795865, ; 654.49846949787354, ; 687.22339297276721, ; 719.94831644766100, ]; engine.full_throttle_torque_Nm = [ 0.00000000000000000, ; 138.68823529411765, ; 150.11304347826086, ; 153.02222222222224, ; 164.06666666666663, ; 167.81142857142856, ; 183.36153846153849, ; 187.87380952380948, ; 188.46888888888887, ; 182.60208333333335, ; 188.23148148148150, ; 201.83750000000001, ; 199.88985507246383, ; 197.39857142857142, ; 196.92948717948721, ; 200.09761904761911, ; 195.30512820512823, ; 184.00000000000000, ; 160.00000000000000, ; 129.99999999999994, ; 0.00000000000000000, ]; % Minimum Torque Curve engine.closed_throttle_speed_radps = [ 0.00000000000000000, ; 147.27786360028949, ; 303.32221180164203, ; 314.23859850679725, ; 324.89757536624961, ; 408.54256464976913, ; 429.35598264561077, ; 468.50745775909786, ; 719.94831644766100, ]; engine.closed_throttle_torque_Nm = [ -13.911671392323701, ; -20.675999999999998, ; -24.838532110091748, ; -27.460606060606057, ; -26.167716535433069, ; -30.094117647058816, ; -33.398214285714275, ; -35.429761904761925, ; -46.978195267305608, ]; % Fuel Map engine.fuel_map_speed_radps = [ 0.00000000000000000, ; 38.798696543476169, ; 77.597393086952337, ; 88.719015873400394, ; 103.38269095966540, ; 130.85139032863947, ; 156.82709975754761, ; 171.82443421948972, ; 182.93122862085298, ; 195.73381518335651, ; 209.26298641498903, ; 261.35888919482682, ; 313.69785910925782, ; 365.97572974600780, ; 418.29581089582791, ; 470.61742432837593, ; 523.28803874325240, ; 575.95865315812875, ; 647.95348480289488, ; 719.94831644766100, ]; engine.fuel_map_torque_Nm = [ -49.327105030670893, ; -24.404157641970063, ; 0.51878974673076916, ; 9.9245725436666667, ; 19.918934366538465, ; 29.858014512499999, ; 39.992345264166666, ; 49.570584341875005, ; 59.936943940909089, ; 69.931205037000012, ; 80.019104052777777, ; 89.979924923749991, ; 99.967333160454530, ; 110.09402799999999, ; 119.92414973999999, ; 129.76249806249999, ; 139.52912722857144, ; 150.22652263750001, ; 160.09362187291669, ; 169.96072110833333, ; 181.67415170000001, ; 188.91183390000000, ; 196.14951610000000, ; 204.03944555000001, ; 211.92937500000002, ]; engine.fuel_map_gps = [ 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, 0.00000000000000000, ; 0.00000000000000000, 0.013646820760799268, 0.029449725355824467, 0.033878031798889784, 0.039688629873391668, 0.050558011497976070, 0.061330240062529143, 0.067928091077805383, 0.072956580142609251, 0.078903346430714172, 0.085379901083000476, 0.11467588775956643, 0.15455197533435822, 0.20062034003246798, 0.25399117921572728, 0.31293355033749365, 0.38210372391811231, 0.45826603920674386, 0.56889349793647326, 0.67945723420621451, ; 0.030446215182980237, 0.074080695331829080, 0.12030232527868621, 0.13300697690775040, 0.15025473008842960, 0.18464394826789232, 0.21921011417657998, 0.24053539321061457, 0.25683345809479424, 0.27617290618135765, 0.29700687377275531, 0.37748949065411819, 0.48336169548222707, 0.57931952139907728, 0.71824028075680024, 0.85156036479064579, 1.0172372589682868, 1.1854711511204747, 1.4009079182671804, 1.6040936094174569, ; 0.049040617110003154, 0.096248173354629610, 0.14510994426013699, 0.16127698031324819, 0.18447204419991167, 0.23366206070709611, 0.28325029435973875, 0.31212003038053943, 0.33320222104321134, 0.35697016201911891, 0.38175187717281789, 0.48310366528917886, 0.59974969770924580, 0.72506221841233764, 0.88488572586279590, 1.0668826252640502, 1.2627431481181823, 1.4631057411110935, 1.7094369437333063, 1.9462027796149721, ; 0.068737733536725423, 0.12999086827905271, 0.19162134647659676, 0.21132771876083309, 0.23865476988519768, 0.29635469335425063, 0.35490116678265743, 0.39150077729754523, 0.41901823673011107, 0.45086841576433040, 0.48437474579557255, 0.59789024830445325, 0.73297411688266223, 0.88780356291807594, 1.0767693785625132, 1.2960296882478612, 1.5200601430478451, 1.7553783971590484, 2.0342016980292685, 2.3080721515352689, ; 0.083897399814554310, 0.16798873190944932, 0.24692392040596572, 0.26677573395700283, 0.29452102262284918, 0.35809915980594043, 0.43012262749774738, 0.47247054142269740, 0.50380860155831608, 0.53971017014224454, 0.57743991287387031, 0.71740839900219866, 0.87757468957065077, 1.0742075119993317, 1.3019366433969255, 1.5195022751881506, 1.7698233478575069, 2.0294911560897679, 2.3543705918448992, 2.6679294622429266, ; 0.089822644882474934, 0.18642368673689930, 0.27984540943684671, 0.30728664248035564, 0.34412908322788066, 0.42520140715137333, 0.50291685154532217, 0.55021840612239015, 0.58591872327747319, 0.62776647416414511, 0.67232248881184120, 0.84351335676922612, 1.0339754941017003, 1.2705818044652688, 1.5502703938158753, 1.7531558914773731, 2.0307851078589025, 2.3139508688680115, 2.6832801617954725, 3.0371281740380569, ; 0.088036300007358195, 0.20168676311808612, 0.31582542553398940, 0.34873719602170633, 0.39216020307601107, 0.47852413553470774, 0.57373950391826678, 0.62960859764525356, 0.67095924035313603, 0.71838776672099569, 0.76869224324044894, 0.97078579627107386, 1.1945501572062265, 1.4560507013332260, 1.7580115971031496, 2.0089108077411506, 2.2958716907932666, 2.5970186935403894, 3.0030301584127814, 3.3913542561930834, ; 0.083095080154387699, 0.21861710481516367, 0.35558692410435760, 0.39516473614188069, 0.44746277818623037, 0.54910155738502653, 0.65974215860331642, 0.72041435711472068, 0.76442960188080267, 0.81431536314784869, 0.86716159885416855, 1.1155088903782997, 1.3712712270319352, 1.6462721568008087, 1.9892629511175663, 2.2819745131946716, 2.5975150800159867, 2.9232298701317809, 3.3651655429044793, 3.7855159118252151, ; 0.080300533922139178, 0.23754398333325252, 0.39585433275851339, 0.44149943939022546, 0.50175726964985135, 0.61473362034419821, 0.73839327232434226, 0.81122860936106722, 0.86498019873294385, 0.92630976512285301, 0.99114726127444641, 1.2531856913417954, 1.5379928719633513, 1.8445777433647694, 2.1899190193909677, 2.5367109299649897, 2.8956886150622378, 3.2566828370085221, 3.7341607525703453, 4.1836785013525386, ; 0.082351683958571009, 0.26157115356614447, 0.44049234725792624, 0.49191304426040672, 0.55986826756176600, 0.68937133840912912, 0.82366799109260103, 0.90410716794379609, 0.96440328983725820, 1.0345989767134287, 1.1090934160643076, 1.3961251453101700, 1.7058034452735336, 2.0412593637947465, 2.3961260491262091, 2.7842901209070865, 3.1971876195136657, 3.6083980182701398, 4.1255828932531715, 4.6125603426780737, ; 0.090781713357520125, 0.29236222646866628, 0.49385008752201615, 0.55135625212869832, 0.62697938962822086, 0.76642834879535804, 0.91340364138838670, 1.0023774317473915, 1.0693426837791755, 1.1473665945198603, 1.2294462371743720, 1.5427382856048266, 1.8685657032921561, 2.2340434909992215, 2.6119047930185149, 3.0239894481471690, 3.4896417194583065, 3.9640836332371521, 4.5266342257081078, 5.0745976918613200, ; 0.10752858584160756, 0.33036280013642305, 0.55235507618391588, 0.61608778279690013, 0.70020932859066431, 0.85852273613918451, 1.0082792024424039, 1.0993911376960277, 1.1688196835522064, 1.2509911662078788, 1.3395271471386556, 1.6899788303379095, 2.0307220823934218, 2.4383090722347185, 2.8378828839405981, 3.2620878353400036, 3.7712285365463210, 4.3119790808326952, 4.9391288167439402, 5.5909648941984056, ; 0.13517645744581303, 0.37874724225473339, 0.62137963993973100, 0.69025351708963134, 0.78084677264121771, 0.95078780954110331, 1.1079431854202357, 1.1996552127111555, 1.2691146383813781, 1.3515762834968887, 1.4411972209307402, 1.8311885325415560, 2.2171742645437558, 2.6506923351184590, 3.0766400834226433, 3.5252476843767941, 4.0422207356536211, 4.6079361492119011, 5.3728110261423048, 6.1861187113400389, ; 0.17527300383181216, 0.43453061679572186, 0.69840983040376192, 0.77497002575738239, 0.87606687864581190, 1.0632951045803265, 1.2303884707853794, 1.3213454383896559, 1.3888707378550862, 1.4684978441931331, 1.5552927925627205, 1.9829131221782372, 2.3899106237793228, 2.8614563860079674, 3.3110052785714439, 3.7787176311675732, 4.3028109362271598, 4.9028613663823801, 5.8333183343875037, 6.8460679589667128, ; 0.23224980528310391, 0.50271036850270978, 0.77844535625027744, 0.85958408719472734, 0.96754522235248752, 1.1767820889118656, 1.3903641916572351, 1.4859020234718261, 1.5517624391185290, 1.6243454016304311, 1.7015591142584481, 2.1100568661526804, 2.5606553650642092, 3.0468212180255811, 3.5379907005730371, 4.0290772654522522, 4.5840514693111443, 5.2408718831541155, 6.3663694103679651, 7.5949027475057029, ; 0.30415213655500101, 0.58797934164094545, 0.87351252824806125, 0.95659645545397165, 1.0667653799709447, 1.2778421871744008, 1.4883776770568589, 1.6006591473859699, 1.6788636328440094, 1.7625898257706933, 1.8487808172250844, 2.2691204034145911, 2.7315138485819994, 3.2282327125151338, 3.7653819370151496, 4.2943906095103044, 4.9193701282940934, 5.6536955686849888, 7.0016606173180786, 8.4259117976276450, ; 0.39269721076543046, 0.69927028383765955, 1.0009077238015922, 1.0857049769831941, 1.1968780593120265, 1.4026124389037300, 1.5999642902748694, 1.7202358415295331, 1.8091205362181586, 1.9103470117809367, 2.0169361577827178, 2.4544869625201229, 2.9353696394105944, 3.4402464034940659, 4.0023751702289356, 4.6369721018936545, 5.4055320453298821, 6.2687535196973894, 7.8546111823411042, 9.4297554965879762, ; 0.47248745821195082, 0.80594245616535365, 1.1351716026866874, 1.2278231838938185, 1.3492256063038019, 1.5720114560732357, 1.7752786123782391, 1.8921019928947977, 1.9788495127833450, 2.0796898453431600, 2.1885052013628385, 2.6794678090787549, 3.1861023348462409, 3.6868568848106089, 4.2768431864701526, 4.9979237731853221, 5.9960315639220747, 7.1227528450916262, 8.7837359804079309, 10.423022020254948, ; 0.54688130192620177, 0.91038253783821443, 1.2744601218592824, 1.3791188753835519, 1.5171347581680943, 1.7739484244050863, 2.0021715676609766, 2.1206052570747409, 2.2020081520205870, 2.2878635635166717, 2.3780097987276489, 2.9932143271703029, 3.5192392696929460, 4.0191513776499734, 4.6510286555913458, 5.4268354430426751, 6.6920107404935250, 8.0939161450860446, 9.7859399929761981, 11.462449819729926, ; 0.62924060494729961, 1.0326792689917770, 1.4360547250310796, 1.5514705404251579, 1.7035254013309704, 1.9874635578600668, 2.2544826676279932, 2.4091326317482320, 2.5241601723627736, 2.6573799265049591, 2.8019470613197668, 3.4896475641998750, 4.0106286190369120, 4.6083487929064884, 5.2581949736645992, 6.2053694793229148, 7.5935045309127887, 9.1983988607647582, 10.968826076239047, 12.742399125927733, ; 0.67772463645778069, 1.1070391451594794, 1.5358413284628645, 1.6585972040996670, 1.8204120349899242, 2.1237918588649656, 2.4137295752851085, 2.5836755651979515, 2.7106217415339833, 2.8582422531791636, 3.0162488078014276, 3.6804653564910104, 4.2723103831198221, 4.9775284768756975, 5.6332105876836405, 6.6843667887888509, 8.1177720078809497, 9.7243586116665046, 11.654806378964038, 13.545379241609439, ; 0.72498210302974431, 1.1811015812504990, 1.6368833935299556, 1.7676054065773912, 1.9400372798969683, 2.2640323219980361, 2.5742911583047445, 2.7554866070570374, 2.8903565017370383, 3.0464512026873058, 3.2120859817762342, 3.8617855720745329, 4.5057800526502492, 5.2907386078444816, 5.9915845068148155, 7.1500755468312009, 8.6194842180668374, 10.223300891393674, 12.315611122284491, 14.351790926561925, ; 0.77545184597158956, 1.2620969976926881, 1.7490839993951119, 1.8888918804943604, 2.0733286674991622, 2.4195266002519000, 2.7482816745207042, 2.9383716093225272, 3.0791492526487070, 3.2413493307129904, 3.4125849604835894, 4.0682790307344696, 4.7637294649969046, 5.5647961941909747, 6.3992716215585528, 7.6484140611779150, 9.1480009725166411, 10.764618576164334, 13.016409906647178, 15.231972514414355, ; 0.82543269537144148, 1.3434954101361098, 1.8625969419045887, 2.0115419731437720, 2.2079433203247740, 2.5755166151384619, 2.9207318710583614, 3.1185618960105832, 3.2645494964667128, 3.4323182283914577, 3.6090473817177666, 4.2812364669337386, 5.0133358420414895, 5.8346229735334010, 6.8382952908960464, 8.1453981927190959, 9.6686940595211031, 11.309281852109402, 13.709120698000833, 16.112032135003027, ]; % Fuel Properties engine.fuel = class_REVS_fuel('FTAG 23945'); % Idle Speed engine.idle_speed_radps = class_REVS_dynamic_lookup; engine.idle_speed_radps.axis_1.signal = 'veh_spd_mps'; engine.idle_speed_radps.axis_1.breakpoints = [ 0.00000000000000000, 1.0000000000000000, ]; engine.idle_speed_radps.table = [ 62.831853071795862, 83.775804095727807, ]; % Pedal Calibration engine.pedal_map_type = enum_engine_pedal_map_type.max_engine_power; % Calibration Adjustment Factors % -- None --