From a3b032039ff4c6fecaa54158b731207cbcf4b9c7 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Sun, 19 Jul 2026 20:55:05 -0600 Subject: [PATCH 1/7] preliminary aux load eff for RES --- fastsim-core/src/macros.rs | 2 +- fastsim-core/src/vehicle/bev.rs | 6 ++++- fastsim-core/src/vehicle/mod.rs | 2 +- .../powertrain/reversible_energy_storage.rs | 11 ++++++++++ fastsim-core/src/vehicle/vehicle_model.rs | 22 +++++++++++++++++++ 5 files changed, 40 insertions(+), 3 deletions(-) diff --git a/fastsim-core/src/macros.rs b/fastsim-core/src/macros.rs index 4799f5f45..8363d9dca 100644 --- a/fastsim-core/src/macros.rs +++ b/fastsim-core/src/macros.rs @@ -73,7 +73,7 @@ macro_rules! impl_efficiency_enum { } }?; - self.try_for_each_value::(|value| { + ::try_for_each_value::(self, |value| { if value.is_nan() { return Ok(()); } diff --git a/fastsim-core/src/vehicle/bev.rs b/fastsim-core/src/vehicle/bev.rs index 5fbb120f5..acb1e625f 100644 --- a/fastsim-core/src/vehicle/bev.rs +++ b/fastsim-core/src/vehicle/bev.rs @@ -206,8 +206,12 @@ impl Powertrain for BatteryElectricVehicle { self.res .set_curr_pwr_out_max(dt, disch_buffer, chrg_buffer) .with_context(|| anyhow!(format_dbg!()))?; + let aux_eff = match &self.res.aux_eff { + Some(AuxEfficiency::Constant(interp)) => interp.interpolate(&[]), + None => Ok(1.0), + }?; self.res - .set_curr_pwr_prop_max(pwr_aux) + .set_curr_pwr_prop_max(pwr_aux / aux_eff) .with_context(|| anyhow!(format_dbg!()))?; self.em .set_curr_pwr_prop_out_max( diff --git a/fastsim-core/src/vehicle/mod.rs b/fastsim-core/src/vehicle/mod.rs index eac230445..e665c7710 100755 --- a/fastsim-core/src/vehicle/mod.rs +++ b/fastsim-core/src/vehicle/mod.rs @@ -29,4 +29,4 @@ pub use powertrain::traits::Powertrain; pub use powertrain::transmission::Transmission; pub use powertrain_type::PowertrainType; pub use traits::*; -pub use vehicle_model::{Vehicle, VehicleState}; +pub use vehicle_model::*; diff --git a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs index 3e49eb3f4..c67b9edbd 100644 --- a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs +++ b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs @@ -36,6 +36,11 @@ pub struct ReversibleEnergyStorage { pub min_soc: si::Ratio, /// Hard limit on maximum SOC, e.g. 0.95 pub max_soc: si::Ratio, + + /// Efficiency to apply to aux load + #[serde(default)] + pub aux_eff: Option, + /// struct for tracking current state #[serde(default)] pub state: ReversibleEnergyStorageState, @@ -137,6 +142,7 @@ impl ReversibleEnergyStorage { eff_interp: RESEfficiency, min_soc: si::Ratio, max_soc: si::Ratio, + aux_eff: Option, save_interval: Option, ) -> anyhow::Result { let mut reversible_energy_storage = Self { @@ -148,6 +154,7 @@ impl ReversibleEnergyStorage { eff_interp, min_soc, max_soc, + aux_eff, state: ReversibleEnergyStorageState::default(), history: ReversibleEnergyStorageStateHistoryVec::default(), save_interval, @@ -817,6 +824,9 @@ impl Init for ReversibleEnergyStorage { self.eff_interp .validate() .map_err(|err| Error::InitError(format_dbg!(err)))?; + if let Some(aux_eff) = self.aux_eff.as_mut() { + aux_eff.validate().map_err(|err| Error::InitError(format_dbg!(err)))?; + } self.state .init() .map_err(|err| Error::InitError(format_dbg!(err)))?; @@ -860,6 +870,7 @@ impl TryFrom for ReversibleEnergyStorage { eff_interp: RESEfficiency::Constant(Interp0D::new(f2veh.ess_round_trip_eff.sqrt())), min_soc: f2veh.min_soc * uc::R, max_soc: f2veh.max_soc * uc::R, + aux_eff: None, save_interval: Some(1), history: Default::default(), }; diff --git a/fastsim-core/src/vehicle/vehicle_model.rs b/fastsim-core/src/vehicle/vehicle_model.rs index 4f5a6c652..33aa0306c 100644 --- a/fastsim-core/src/vehicle/vehicle_model.rs +++ b/fastsim-core/src/vehicle/vehicle_model.rs @@ -21,6 +21,27 @@ pub enum AuxSource { impl SerdeAPI for AuxSource {} impl Init for AuxSource {} +/// Efficiency model for aux load power source +#[derive(Clone, Debug, Deserialize, Serialize, PartialEq, IsVariant, TryInto)] +pub enum AuxEfficiency { + Constant(Interp0D), +} + +impl_efficiency_enum!(AuxEfficiency { Constant }); + +// impl Default for AuxEfficiency { +// /// Default to 100% efficiency. +// /// Necessary for backwards compatibility when field is missing. +// /// Also used in unwrap_or_default() calls. +// fn default() -> Self { +// AuxEfficiency::Constant(Interp0D(1.0)) +// } +// } + +// pub(crate) fn default_aux_efficiency() -> AuxEfficiency { +// AuxEfficiency::Constant(Interp0D(1.0)) +// } + #[serde_api] #[cfg_attr(feature = "pyo3", pyclass(module = "fastsim", subclass, eq))] #[derive(PartialEq, Clone, Debug, Serialize, Deserialize, StateMethods)] @@ -1333,6 +1354,7 @@ pub(crate) mod tests { RESEfficiency::Constant(Interp0D(0.9)), // eff_interp 0.0 * uc::R, // min_soc 1.0 * uc::R, // max_soc + Option::None, // aux_eff Option::None, )?; let fs = FuelStorage::new( From 579a387260d7f8ea72042d4d8f1d8d60f2b046b0 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Sun, 19 Jul 2026 22:27:40 -0600 Subject: [PATCH 2/7] switch from alt_eff to aux_eff for conv, proper compat plumbing and checks --- fastsim-core/src/macros.rs | 8 +++- fastsim-core/src/vehicle/conv.rs | 41 ++++++++++++++++++- fastsim-core/src/vehicle/mod.rs | 2 +- .../src/vehicle/powertrain/fuel_converter.rs | 17 ++++++++ .../powertrain/reversible_energy_storage.rs | 4 +- fastsim-core/src/vehicle/vehicle_model.rs | 2 + .../vehicle_model/fastsim2_interface.rs | 9 +++- 7 files changed, 78 insertions(+), 5 deletions(-) diff --git a/fastsim-core/src/macros.rs b/fastsim-core/src/macros.rs index 8363d9dca..b06e81444 100644 --- a/fastsim-core/src/macros.rs +++ b/fastsim-core/src/macros.rs @@ -65,7 +65,7 @@ macro_rules! impl_efficiency_enum { } } - /// Validate efficiency map, ensuring all values are within the range [0, 1] and that the underlying interpolator is valid. + /// Validate efficiency map, ensuring all values are within the range \[0, 1\] and that the underlying interpolator is valid. fn validate(&mut self) -> Result<(), ninterp::error::ValidateError> { ::paste::paste! { match self { @@ -142,6 +142,12 @@ macro_rules! impl_efficiency_enum { } } + impl From for $enum_ty { + fn from(value: f64) -> Self { + Self::Constant(ninterp::prelude::Interp0D(value)) + } + } + impl $crate::utils::interp::InterpolatorScanValues for $enum_ty { fn try_for_each_value Result<(), E>>(&self, f: F) -> Result<(), E> { ::paste::paste! { diff --git a/fastsim-core/src/vehicle/conv.rs b/fastsim-core/src/vehicle/conv.rs index c3f87f87c..f0d88fbb5 100644 --- a/fastsim-core/src/vehicle/conv.rs +++ b/fastsim-core/src/vehicle/conv.rs @@ -128,13 +128,24 @@ pub struct ConventionalVehicle { /// powertrain mass pub(crate) mass: Option, /// Alternator efficiency used to calculate aux mechanical power demand on engine + #[serde(default = "default_alt_eff")] + #[deprecated( + note = "This field will be removed in a future release. Use FuelConverter.aux_eff instead." + )] + #[serde(skip_serializing)] pub alt_eff: si::Ratio, } +/// Defaults to 100% for backward compatibility. This field will be removed in a future release. +fn default_alt_eff() -> si::Ratio { + 1.0 * uc::R +} + #[pyo3_api] impl ConventionalVehicle {} impl ConventionalVehicle { + #[allow(deprecated)] pub fn new( fs: FuelStorage, fc: FuelConverter, @@ -160,7 +171,30 @@ impl ConventionalVehicle { impl SerdeAPI for ConventionalVehicle {} impl Init for ConventionalVehicle { + #[allow(deprecated)] fn init(&mut self) -> Result<(), Error> { + if self.alt_eff != 1.0 * uc::R { + // when supplied an alt_eff that would have an effect on simulation: + // - emit warning about deprecated field + eprintln!( + "Warning: deprecated field `alt_eff` = `{}` is not equal to 1.0, which is the default value. This field will be removed in a future release.", + self.alt_eff.get::() + ); + if self.fc.aux_eff.is_none() { + // if alt_eff != 1.0 is provided and aux_eff is not set + // use alt_eff to set aux_eff + self.fc.aux_eff = Some(self.alt_eff.get::().into()); + } else if let Some(AuxEfficiency::Constant(interp)) = &self.fc.aux_eff { + if interp.0 != self.alt_eff.get::() { + // if provided both alt_eff != 1.0 and Some aux_eff that is not equivalent + // emit warning that aux_eff overrides alt_eff + eprintln!( + "Warning: provided deprecated field `alt_eff` = `{}` is being overridden by `fc.aux_eff`. The `alt_eff` field will be removed in a future release.", + self.alt_eff.get::() + ); + } + } + } self.fc .init() .map_err(|err| Error::InitError(format_dbg!(err)))?; @@ -202,8 +236,12 @@ impl Powertrain for Box { self.fc .set_curr_pwr_out_max(dt) .with_context(|| anyhow!(format_dbg!()))?; + let aux_eff = match &self.fc.aux_eff { + Some(AuxEfficiency::Constant(interp)) => interp.interpolate(&[]), + None => Ok(1.0), + }?; self.fc - .set_curr_pwr_prop_max(pwr_aux / self.alt_eff) + .set_curr_pwr_prop_max(pwr_aux / aux_eff) .with_context(|| anyhow!(format_dbg!()))?; self.transmission .set_curr_pwr_prop_out_max( @@ -318,6 +356,7 @@ impl ConventionalVehicle { impl TryFrom<&fastsim_2::vehicle::RustVehicle> for ConventionalVehicle { type Error = anyhow::Error; + #[allow(deprecated)] fn try_from(f2veh: &fastsim_2::vehicle::RustVehicle) -> anyhow::Result { let conv = ConventionalVehicle { fs: { diff --git a/fastsim-core/src/vehicle/mod.rs b/fastsim-core/src/vehicle/mod.rs index e665c7710..1cfc1a24e 100755 --- a/fastsim-core/src/vehicle/mod.rs +++ b/fastsim-core/src/vehicle/mod.rs @@ -29,4 +29,4 @@ pub use powertrain::traits::Powertrain; pub use powertrain::transmission::Transmission; pub use powertrain_type::PowertrainType; pub use traits::*; -pub use vehicle_model::*; +pub use vehicle_model::{AuxEfficiency, Vehicle, VehicleState}; diff --git a/fastsim-core/src/vehicle/powertrain/fuel_converter.rs b/fastsim-core/src/vehicle/powertrain/fuel_converter.rs index 904f07122..b3f31f6df 100755 --- a/fastsim-core/src/vehicle/powertrain/fuel_converter.rs +++ b/fastsim-core/src/vehicle/powertrain/fuel_converter.rs @@ -37,6 +37,11 @@ pub struct FuelConverter { pub(crate) pwr_for_peak_eff: si::Power, /// idle fuel power to overcome internal friction (not including aux load) \[W\] pub pwr_idle_fuel: si::Power, + + /// Efficiency to apply to aux load + #[serde(default)] + pub aux_eff: Option, + /// struct for tracking current state #[serde(default)] pub state: FuelConverterState, @@ -107,6 +112,7 @@ impl FuelConverter { eff_interp_from_pwr_out: InterpolatorEnumOwned, pwr_for_peak_eff: si::Power, pwr_idle_fuel: si::Power, + aux_eff: Option, save_interval: Option, ) -> anyhow::Result { let mut fc = Self { @@ -119,6 +125,7 @@ impl FuelConverter { eff_interp_from_pwr_out, pwr_for_peak_eff, pwr_idle_fuel, + aux_eff, state: FuelConverterState::default(), history: FuelConverterStateHistoryVec::default(), save_interval, @@ -135,6 +142,11 @@ impl Init for FuelConverter { .mass() .map_err(|err| Error::InitError(format_dbg!(err)))?; self.thrml.init()?; + if let Some(aux_eff) = self.aux_eff.as_mut() { + aux_eff + .validate() + .map_err(|err| Error::InitError(format_dbg!(err)))?; + } self.state .init() .map_err(|err| Error::InitError(format_dbg!(err)))?; @@ -514,6 +526,7 @@ impl TryFrom for FuelConverter { pwr_for_peak_eff: uc::KW * f64::NAN, // this gets updated in `init` // this means that aux power must include idle fuel pwr_idle_fuel: si::Power::ZERO, + aux_eff: Some(f2veh.alt_eff.into()), save_interval: Some(1), } .try_into() @@ -540,6 +553,7 @@ impl TryFrom for FuelConverter { // TODO: make a function for setting this according with below line // this means that aux power must include idle fuel pwr_idle_fuel: si::Power::ZERO, + aux_eff: fcbuilder.aux_eff, save_interval: Some(1), history: Default::default(), }; @@ -565,6 +579,8 @@ pub struct FCBuilder { pub(crate) pwr_for_peak_eff: si::Power, /// idle fuel power to overcome internal friction (not including aux load) \[W\] pub pwr_idle_fuel: si::Power, + /// Efficiency to apply to aux load + pub aux_eff: Option, /// time step interval between saves. 1 is a good option. If None, no saving occurs. pub save_interval: Option, } @@ -1370,6 +1386,7 @@ mod tests { .unwrap(), pwr_for_peak_eff: peak_pwr * 0.8, pwr_idle_fuel: idle_pwr, + aux_eff: None, state: fc_state, history: FuelConverterStateHistoryVec::default(), save_interval: Option::None, diff --git a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs index c67b9edbd..324dd9283 100644 --- a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs +++ b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs @@ -825,7 +825,9 @@ impl Init for ReversibleEnergyStorage { .validate() .map_err(|err| Error::InitError(format_dbg!(err)))?; if let Some(aux_eff) = self.aux_eff.as_mut() { - aux_eff.validate().map_err(|err| Error::InitError(format_dbg!(err)))?; + aux_eff + .validate() + .map_err(|err| Error::InitError(format_dbg!(err)))?; } self.state .init() diff --git a/fastsim-core/src/vehicle/vehicle_model.rs b/fastsim-core/src/vehicle/vehicle_model.rs index 33aa0306c..1cdd2c5e4 100644 --- a/fastsim-core/src/vehicle/vehicle_model.rs +++ b/fastsim-core/src/vehicle/vehicle_model.rs @@ -1267,6 +1267,7 @@ pub(crate) mod tests { 0.4 * 211088.0 * uc::W, // pwr_for_peak_eff 0.0 * uc::W, // pwr_idle_fuel Option::None, + Option::None, )?; let tx = Transmission::new( Option::None, // mass @@ -1397,6 +1398,7 @@ pub(crate) mod tests { 0.4 * 211088.0 * uc::W, // pwr_for_peak_eff 0.0 * uc::W, // pwr_idle_fuel Option::None, + Option::None, )?; let em = ElectricMachine::new( InterpolatorEnum::new_1d( diff --git a/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs b/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs index cfcad2992..6dd6906c7 100644 --- a/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs +++ b/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs @@ -73,10 +73,17 @@ Expected one of {}", impl Vehicle { /// Function to convert back to fastsim-2 format. Note that this is /// probably not 100% reliable. + #[allow(deprecated)] pub fn to_fastsim2(&self) -> anyhow::Result { let mut veh = fastsim_2::vehicle::RustVehicle { alt_eff: match &self.pt_type { - PowertrainType::ConventionalVehicle(conv) => conv.alt_eff.get::(), + PowertrainType::ConventionalVehicle(conv) => { + if let Some(AuxEfficiency::Constant(interp)) = &conv.fc.aux_eff { + interp.0 + } else { + conv.alt_eff.get::() + } + } _ => 1.0, }, alt_eff_doc: None, From 478e31c68f72ae0889390f54205c30d56e54ef54 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Sun, 19 Jul 2026 22:31:21 -0600 Subject: [PATCH 3/7] regenerated vehicles --- cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml | 3 ++- cal_and_val/f3-vehicles/2012 Ford Focus.yaml | 3 ++- cal_and_val/f3-vehicles/2012 Ford Fusion.yaml | 3 ++- cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml | 3 +++ cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml | 1 + cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml | 3 +++ cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml | 3 +++ cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml | 3 +++ cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml | 3 +++ cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml | 3 +++ cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml | 3 +++ cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml | 1 + cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml | 1 + cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml | 1 + cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml | 1 + cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml | 3 +++ cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml | 3 +++ cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml | 1 + cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml | 3 ++- cal_and_val/f3-vehicles/2017 Prius Prime.yaml | 3 +++ cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml | 3 ++- .../f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml | 3 ++- cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml | 3 ++- cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml | 3 ++- cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml | 3 ++- cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml | 1 + cal_and_val/f3-vehicles/2021 Cupra Born.yaml | 1 + cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml | 3 ++- cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml | 3 ++- cal_and_val/f3-vehicles/2021 Peugot 3008.yaml | 3 ++- cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml | 1 + .../f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml | 1 + cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml | 1 + cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml | 1 + cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml | 1 + cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml | 1 + cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml | 3 +++ cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml | 3 +++ cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml | 1 + cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml | 3 ++- .../f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml | 1 + cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml | 1 + cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml | 1 + cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml | 3 ++- cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml | 1 + cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml | 3 ++- cal_and_val/f3-vehicles/BYD ATTO 3.yaml | 1 + cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml | 3 ++- cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml | 3 ++- cal_and_val/f3-vehicles/Line Haul Conv.yaml | 3 ++- cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml | 3 ++- cal_and_val/f3-vehicles/Nissan Navara.yaml | 3 ++- cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml | 3 ++- cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml | 3 ++- .../f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml | 3 ++- cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml | 3 +++ cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml | 3 ++- cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml | 3 ++- cal_and_val/f3-vehicles/Toyota Mirai.yaml | 3 +++ fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml | 3 ++- fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml | 3 +++ .../resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml | 1 + 70 files changed, 134 insertions(+), 34 deletions(-) diff --git a/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml b/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml index 9d869b1d8..fcf18e963 100644 --- a/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml +++ b/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3301 frontal_area_square_meters: 2.574 diff --git a/cal_and_val/f3-vehicles/2012 Ford Focus.yaml b/cal_and_val/f3-vehicles/2012 Ford Focus.yaml index 2c839f3bd..acd08cd13 100644 --- a/cal_and_val/f3-vehicles/2012 Ford Focus.yaml +++ b/cal_and_val/f3-vehicles/2012 Ford Focus.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.304 frontal_area_square_meters: 2.574 diff --git a/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml b/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml index 5d8d5ada6..520d84307 100644 --- a/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml +++ b/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.393 frontal_area_square_meters: 2.12 diff --git a/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml index 0abfe955f..53c5d117b 100644 --- a/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.395 frontal_area_square_meters: 2.565 diff --git a/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml index d034ff92a..1ed687b4c 100644 --- a/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.565 diff --git a/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml b/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml index fe259f2d9..b106859ec 100644 --- a/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml +++ b/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml index ed6d414dd..40c50cbc0 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.732 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml index 40f01ca77..63b2f644f 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.03 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml index 999517415..b107edeeb 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml b/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml index 9396870f4..b36b61902 100644 --- a/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml +++ b/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml b/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml index 744b74165..c8bdf6b27 100644 --- a/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml index 65313db47..13ce03e74 100644 --- a/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.355 frontal_area_square_meters: 3.066 diff --git a/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml index d5d64e9c3..1b84a2380 100644 --- a/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.34 frontal_area_square_meters: 3.568 diff --git a/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml index 9b15bb6da..270bdde5c 100644 --- a/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.611 diff --git a/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml b/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml index 6f6f31505..024b97707 100644 --- a/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml +++ b/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml b/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml index 355985813..e92b53c24 100644 --- a/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml +++ b/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml b/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml index 1a2656cde..445070b7d 100644 --- a/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml b/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml index 90d424c20..34729ea27 100644 --- a/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml +++ b/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml b/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml index 18e0d4e95..efcd141f6 100644 --- a/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml +++ b/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml b/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml index b8ba66112..08e1f21ba 100644 --- a/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml +++ b/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml b/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml index 11182d3c5..ebe9df7a8 100644 --- a/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml index e646e2ba0..a05aa149f 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.694 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml index 0a1b0f5af..f31a0eb2f 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.574 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml index 3337e5bd5..01610dc85 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml b/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml index c81826eee..088b243db 100644 --- a/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml +++ b/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.95 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml b/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml index ce6ab66e5..fb615f9f2 100644 --- a/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml +++ b/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml b/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml index 1413387f3..249525a52 100644 --- a/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml +++ b/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.375 frontal_area_square_meters: 2.1347 diff --git a/cal_and_val/f3-vehicles/2017 Prius Prime.yaml b/cal_and_val/f3-vehicles/2017 Prius Prime.yaml index c731949ec..21d7b833c 100644 --- a/cal_and_val/f3-vehicles/2017 Prius Prime.yaml +++ b/cal_and_val/f3-vehicles/2017 Prius Prime.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.9 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml b/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml index 2894d760f..cfd55bb07 100644 --- a/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml +++ b/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.1966 frontal_area_square_meters: 6.0 diff --git a/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml b/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml index d2c739b8e..c804ab3fa 100644 --- a/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml +++ b/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.4 frontal_area_square_meters: 2.88 diff --git a/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml b/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml index a1dda10aa..3b89419c2 100644 --- a/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml +++ b/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.78 frontal_area_square_meters: 0.68 diff --git a/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml b/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml index 357a845d0..17abc0b31 100644 --- a/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml +++ b/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.275 frontal_area_square_meters: 2.21 diff --git a/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml b/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml index bc5c15361..817131623 100644 --- a/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml +++ b/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.275 frontal_area_square_meters: 2.21 diff --git a/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml b/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml index 74d3ff2e6..999d53ea8 100644 --- a/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml +++ b/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.04 max_soc: 0.96689295 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2021 Cupra Born.yaml b/cal_and_val/f3-vehicles/2021 Cupra Born.yaml index 93db6c29b..3eac4d167 100644 --- a/cal_and_val/f3-vehicles/2021 Cupra Born.yaml +++ b/cal_and_val/f3-vehicles/2021 Cupra Born.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.04 max_soc: 0.97902439 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml b/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml index c84090522..7a95d1124 100644 --- a/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.4 frontal_area_square_meters: 2.1 diff --git a/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml b/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml index 2c92ed40c..15e018c1c 100644 --- a/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml +++ b/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.38 frontal_area_square_meters: 2.19 diff --git a/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml b/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml index 4eabcd7a5..de35bb248 100644 --- a/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml +++ b/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.33 frontal_area_square_meters: 2.8 diff --git a/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml b/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml index d3d3790e7..25a0d9776 100644 --- a/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml +++ b/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml b/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml index 15c905f5b..119c5de7a 100755 --- a/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml +++ b/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml b/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml index cd07eb86b..afacd9848 100644 --- a/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml +++ b/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml b/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml index 31257093a..33ce992ac 100644 --- a/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml +++ b/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml b/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml index 021b26d7b..f6c4ff29d 100644 --- a/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml +++ b/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml b/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml index eeae2ded8..dd55dabcf 100644 --- a/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml +++ b/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml b/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml index 4f89b4e4b..432a290df 100644 --- a/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml +++ b/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 0.9 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml b/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml index f3cafb0a1..ec0eb6344 100644 --- a/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml +++ b/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 0.9 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml b/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml index da6be46c0..ece161ecf 100644 --- a/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml +++ b/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml b/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml index 3a6aa7f9c..7440a52e8 100644 --- a/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml +++ b/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.4 frontal_area_square_meters: 2.83094625 diff --git a/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml b/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml index 30c497b17..d01ecc3ba 100644 --- a/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml +++ b/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml b/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml index ed734b948..13209dd6a 100644 --- a/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml +++ b/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml b/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml index 6627881fa..55513cbc2 100644 --- a/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml +++ b/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml b/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml index ba71271f7..a947f44cb 100644 --- a/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml +++ b/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.28 frontal_area_square_meters: 2.1689875 diff --git a/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml b/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml index 5643dbc9e..ec6c5b7a0 100644 --- a/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml +++ b/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml b/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml index 3deabd65e..cc74f181f 100644 --- a/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml +++ b/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.306 frontal_area_square_meters: 2.318 diff --git a/cal_and_val/f3-vehicles/BYD ATTO 3.yaml b/cal_and_val/f3-vehicles/BYD ATTO 3.yaml index a29a0f852..eb92ce114 100644 --- a/cal_and_val/f3-vehicles/BYD ATTO 3.yaml +++ b/cal_and_val/f3-vehicles/BYD ATTO 3.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml b/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml index 6e2eec92d..2b64b8416 100644 --- a/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml +++ b/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.78 frontal_area_square_meters: 0.68 diff --git a/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml b/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml index a3fb12741..7a3fdc38a 100644 --- a/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml +++ b/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.6078 frontal_area_square_meters: 8.686 diff --git a/cal_and_val/f3-vehicles/Line Haul Conv.yaml b/cal_and_val/f3-vehicles/Line Haul Conv.yaml index af965c8e3..3f8da567a 100644 --- a/cal_and_val/f3-vehicles/Line Haul Conv.yaml +++ b/cal_and_val/f3-vehicles/Line Haul Conv.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.6 frontal_area_square_meters: 8.5 diff --git a/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml index 1b4a968e0..71947c9bf 100644 --- a/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.12 diff --git a/cal_and_val/f3-vehicles/Nissan Navara.yaml b/cal_and_val/f3-vehicles/Nissan Navara.yaml index 5884fbde1..a10c986f2 100644 --- a/cal_and_val/f3-vehicles/Nissan Navara.yaml +++ b/cal_and_val/f3-vehicles/Nissan Navara.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.39 frontal_area_square_meters: 3.2 diff --git a/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml b/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml index 1017b1e16..e68eca424 100644 --- a/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml +++ b/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.8 frontal_area_square_meters: 10.0 diff --git a/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml b/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml index b756dc2de..5954e9906 100644 --- a/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml +++ b/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.33 frontal_area_square_meters: 2.0 diff --git a/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml b/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml index 1acae2154..b0758d18c 100644 --- a/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml +++ b/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.35 frontal_area_square_meters: 2.3 diff --git a/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml b/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml index 40435bbe0..8b072b168 100644 --- a/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml +++ b/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 0.9 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml b/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml index ecd02f785..3c8a56832 100644 --- a/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml +++ b/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.3 frontal_area_square_meters: 2.3 diff --git a/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml b/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml index e043b2101..65559ee82 100644 --- a/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml +++ b/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.4 frontal_area_square_meters: 2.86 diff --git a/cal_and_val/f3-vehicles/Toyota Mirai.yaml b/cal_and_val/f3-vehicles/Toyota Mirai.yaml index 4aecce66f..36cff5061 100644 --- a/cal_and_val/f3-vehicles/Toyota Mirai.yaml +++ b/cal_and_val/f3-vehicles/Toyota Mirai.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml b/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml index d397fc7cc..73b0b846b 100644 --- a/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml +++ b/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml @@ -56,6 +56,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 @@ -126,7 +128,6 @@ pt_type: i: [] vehicle_dynamics_prevent_dfco: [] mass_kilograms: ~ - alt_eff: 1.0 chassis: drag_coef: 0.393 frontal_area_square_meters: 2.12 diff --git a/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml b/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml index 4e000de82..c8a83cb7e 100755 --- a/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml +++ b/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.95 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -109,6 +110,8 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 + aux_eff: + Constant: 1.0 state: i: 0 pwr_out_max_watts: 0.0 diff --git a/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml b/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml index dbbc5e6dc..9dcc4bad5 100644 --- a/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml +++ b/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml @@ -14,6 +14,7 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 + aux_eff: ~ state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 From 265cab84d2c790d406f142f68fb967533dbac036 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Mon, 20 Jul 2026 00:01:42 -0600 Subject: [PATCH 4/7] add version number to deprecate notice --- fastsim-core/src/vehicle/conv.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/fastsim-core/src/vehicle/conv.rs b/fastsim-core/src/vehicle/conv.rs index f0d88fbb5..2343c0bdc 100644 --- a/fastsim-core/src/vehicle/conv.rs +++ b/fastsim-core/src/vehicle/conv.rs @@ -130,6 +130,7 @@ pub struct ConventionalVehicle { /// Alternator efficiency used to calculate aux mechanical power demand on engine #[serde(default = "default_alt_eff")] #[deprecated( + since = "3.1.0", note = "This field will be removed in a future release. Use FuelConverter.aux_eff instead." )] #[serde(skip_serializing)] From b0741c2d24974299a426927cdbb87dd15e35ea10 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Tue, 21 Jul 2026 13:07:35 -0600 Subject: [PATCH 5/7] aux_supply_eff mandatory (defaults to 100%) --- .../f3-vehicles/2010 Mazda 3 i-Stop.yaml | 2 +- cal_and_val/f3-vehicles/2012 Ford Focus.yaml | 2 +- cal_and_val/f3-vehicles/2012 Ford Fusion.yaml | 2 +- .../f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml | 2 +- .../f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml | 2 +- .../f3-vehicles/2016 BMW i3 REx PHEV.yaml | 5 +-- .../2016 CHEVROLET Malibu 4cyl 2WD.yaml | 2 +- .../f3-vehicles/2016 CHEVROLET Spark EV.yaml | 3 +- .../f3-vehicles/2016 CHEVROLET Volt.yaml | 5 +-- .../f3-vehicles/2016 FORD C-MAX (PHEV).yaml | 5 +-- .../f3-vehicles/2016 FORD C-MAX HEV.yaml | 5 +-- .../2016 FORD Escape 4cyl 2WD.yaml | 2 +- .../2016 FORD Explorer 4cyl 2WD.yaml | 2 +- .../2016 HYUNDAI Elantra 4cyl 2WD.yaml | 2 +- .../f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml | 5 +-- .../2016 Hyundai Tucson Fuel Cell.yaml | 5 +-- .../f3-vehicles/2016 KIA Optima Hybrid.yaml | 5 +-- cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml | 3 +- .../f3-vehicles/2016 MITSUBISHI i-MiEV.yaml | 3 +- .../f3-vehicles/2016 Nissan Leaf 30 kWh.yaml | 3 +- .../f3-vehicles/2016 TESLA Model S60 2WD.yaml | 3 +- .../2016 TOYOTA Camry 4cyl 2WD.yaml | 2 +- .../2016 TOYOTA Corolla 4cyl 2WD.yaml | 2 +- .../2016 TOYOTA Highlander Hybrid.yaml | 5 +-- .../2016 Toyota Prius Two FWD.yaml | 5 +-- .../f3-vehicles/2017 CHEVROLET Bolt.yaml | 3 +- .../f3-vehicles/2017 Maruti Dzire VDI.yaml | 2 +- cal_and_val/f3-vehicles/2017 Prius Prime.yaml | 5 +-- .../2017 Toyota Highlander 3.5 L.yaml | 2 +- .../2020 Chevrolet Colorado 2WD Diesel.yaml | 2 +- .../2020 Hero Splendor+ 100cc.yaml | 2 +- .../f3-vehicles/2020 VW Golf 1.5TSI.yaml | 2 +- .../f3-vehicles/2020 VW Golf 2.0TDI.yaml | 2 +- .../f3-vehicles/2021 BMW iX xDrive40.yaml | 3 +- cal_and_val/f3-vehicles/2021 Cupra Born.yaml | 3 +- .../2021 Fiat Panda Mild Hybrid.yaml | 2 +- .../f3-vehicles/2021 Honda N-Box G.yaml | 2 +- cal_and_val/f3-vehicles/2021 Peugot 3008.yaml | 2 +- .../2022 Ford F-150 Lightning 4WD.yaml | 3 +- .../2022 MINI Cooper SE Hardtop 2 door.yaml | 3 +- .../2022 Renault Megane E-Tech.yaml | 3 +- .../2022 Renault Zoe ZE50 R135.yaml | 3 +- .../f3-vehicles/2022 Tesla Model 3 RWD.yaml | 3 +- .../f3-vehicles/2022 Tesla Model Y RWD.yaml | 3 +- .../2022 Toyota RAV4 Hybrid LE.yaml | 5 +-- .../2022 Toyota Yaris Hybrid Mid.yaml | 5 +-- .../2022 Volvo XC40 Recharge twin.yaml | 3 +- .../2023 Mitsubishi Pajero Sport.yaml | 2 +- ...2023 Polestar 2 Long range Dual motor.yaml | 3 +- .../f3-vehicles/2023 Volvo C40 Recharge.yaml | 3 +- .../f3-vehicles/2024 BYD Dolphin Active.yaml | 3 +- .../f3-vehicles/2024 Toyota Vios 1.5 G.yaml | 2 +- .../f3-vehicles/2024 VinFast VF e34.yaml | 3 +- .../2024 Volkswagen Polo 1.0 MPI.yaml | 2 +- cal_and_val/f3-vehicles/BYD ATTO 3.yaml | 3 +- cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml | 2 +- .../Class 4 Truck (Isuzu NPR HD).yaml | 2 +- cal_and_val/f3-vehicles/Line Haul Conv.yaml | 2 +- .../f3-vehicles/Maruti Swift 4cyl 2WD.yaml | 2 +- cal_and_val/f3-vehicles/Nissan Navara.yaml | 2 +- .../Regional Delivery Class 8 Truck.yaml | 2 +- .../f3-vehicles/Renault Clio IV diesel.yaml | 2 +- .../Renault Megane 1.5 dCi Authentique.yaml | 2 +- .../Toyota Corolla Cross Hybrid.yaml | 5 +-- .../f3-vehicles/Toyota Etios Liva diesel.yaml | 2 +- .../Toyota Hilux Double Cab 4WD.yaml | 2 +- cal_and_val/f3-vehicles/Toyota Mirai.yaml | 5 +-- .../resources/vehicles/2012_Ford_Fusion.yaml | 2 +- .../vehicles/2016_TOYOTA_Prius_Two.yaml | 5 +-- .../vehicles/2022_Renault_Zoe_ZE50_R135.yaml | 3 +- fastsim-core/src/vehicle/bev.rs | 7 ++--- fastsim-core/src/vehicle/conv.rs | 31 +++++++++---------- fastsim-core/src/vehicle/mod.rs | 2 +- .../src/vehicle/powertrain/fuel_converter.rs | 22 ++++++------- .../powertrain/reversible_energy_storage.rs | 16 +++++----- fastsim-core/src/vehicle/vehicle_model.rs | 30 ++++++++---------- .../vehicle_model/fastsim2_interface.rs | 10 ++---- 77 files changed, 172 insertions(+), 152 deletions(-) diff --git a/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml b/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml index fcf18e963..b929298a0 100644 --- a/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml +++ b/cal_and_val/f3-vehicles/2010 Mazda 3 i-Stop.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2012 Ford Focus.yaml b/cal_and_val/f3-vehicles/2012 Ford Focus.yaml index acd08cd13..3ac656a56 100644 --- a/cal_and_val/f3-vehicles/2012 Ford Focus.yaml +++ b/cal_and_val/f3-vehicles/2012 Ford Focus.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml b/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml index 520d84307..54e9e30cb 100644 --- a/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml +++ b/cal_and_val/f3-vehicles/2012 Ford Fusion.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml index 53c5d117b..94086d570 100644 --- a/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 AUDI A3 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml index 1ed687b4c..0189dd151 100644 --- a/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 BMW 328d 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml b/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml index b106859ec..65b35b959 100644 --- a/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml +++ b/cal_and_val/f3-vehicles/2016 BMW i3 REx PHEV.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml index 40c50cbc0..1a0881932 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Malibu 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml index 63b2f644f..3ac1d2f85 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Spark EV.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.03 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml b/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml index b107edeeb..d53fc5f33 100644 --- a/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml +++ b/cal_and_val/f3-vehicles/2016 CHEVROLET Volt.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml b/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml index b36b61902..240d59499 100644 --- a/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml +++ b/cal_and_val/f3-vehicles/2016 FORD C-MAX (PHEV).yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml b/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml index c8bdf6b27..6c2e6510c 100644 --- a/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD C-MAX HEV.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml index 13ce03e74..d0218837b 100644 --- a/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD Escape 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml index 1b84a2380..499beb59d 100644 --- a/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 FORD Explorer 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml index 270bdde5c..bc0ee6541 100644 --- a/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 HYUNDAI Elantra 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml b/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml index 024b97707..4164ec249 100644 --- a/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml +++ b/cal_and_val/f3-vehicles/2016 HYUNDAI Sonata PHEV.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.15 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml b/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml index e92b53c24..7e8843932 100644 --- a/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml +++ b/cal_and_val/f3-vehicles/2016 Hyundai Tucson Fuel Cell.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml b/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml index 445070b7d..84d61e5e3 100644 --- a/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2016 KIA Optima Hybrid.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml b/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml index 34729ea27..f50b16ff4 100644 --- a/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml +++ b/cal_and_val/f3-vehicles/2016 Leaf 24 kWh.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml b/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml index efcd141f6..6cf72f92d 100644 --- a/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml +++ b/cal_and_val/f3-vehicles/2016 MITSUBISHI i-MiEV.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml b/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml index 08e1f21ba..632b291d4 100644 --- a/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml +++ b/cal_and_val/f3-vehicles/2016 Nissan Leaf 30 kWh.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.95 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml b/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml index ebe9df7a8..71046d0a6 100644 --- a/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TESLA Model S60 2WD.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml index a05aa149f..cde040514 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Camry 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml index f31a0eb2f..c4cf9fb94 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Corolla 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml b/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml index 01610dc85..c23075a3c 100644 --- a/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2016 TOYOTA Highlander Hybrid.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml b/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml index 088b243db..6c659347a 100644 --- a/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml +++ b/cal_and_val/f3-vehicles/2016 Toyota Prius Two FWD.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.95 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml b/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml index fb615f9f2..86ee39615 100644 --- a/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml +++ b/cal_and_val/f3-vehicles/2017 CHEVROLET Bolt.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml b/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml index 249525a52..718c7482b 100644 --- a/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml +++ b/cal_and_val/f3-vehicles/2017 Maruti Dzire VDI.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2017 Prius Prime.yaml b/cal_and_val/f3-vehicles/2017 Prius Prime.yaml index 21d7b833c..0aa7891f5 100644 --- a/cal_and_val/f3-vehicles/2017 Prius Prime.yaml +++ b/cal_and_val/f3-vehicles/2017 Prius Prime.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.9 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml b/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml index cfd55bb07..f714c0cb3 100644 --- a/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml +++ b/cal_and_val/f3-vehicles/2017 Toyota Highlander 3.5 L.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml b/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml index c804ab3fa..236ca5b08 100644 --- a/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml +++ b/cal_and_val/f3-vehicles/2020 Chevrolet Colorado 2WD Diesel.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml b/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml index 3b89419c2..73ca364c9 100644 --- a/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml +++ b/cal_and_val/f3-vehicles/2020 Hero Splendor+ 100cc.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml b/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml index 17abc0b31..9a744041a 100644 --- a/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml +++ b/cal_and_val/f3-vehicles/2020 VW Golf 1.5TSI.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml b/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml index 817131623..f02d8c9fd 100644 --- a/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml +++ b/cal_and_val/f3-vehicles/2020 VW Golf 2.0TDI.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml b/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml index 999d53ea8..d49b08f07 100644 --- a/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml +++ b/cal_and_val/f3-vehicles/2021 BMW iX xDrive40.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.04 max_soc: 0.96689295 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2021 Cupra Born.yaml b/cal_and_val/f3-vehicles/2021 Cupra Born.yaml index 3eac4d167..7292a2be0 100644 --- a/cal_and_val/f3-vehicles/2021 Cupra Born.yaml +++ b/cal_and_val/f3-vehicles/2021 Cupra Born.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.04 max_soc: 0.97902439 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml b/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml index 7a95d1124..db64d1d89 100644 --- a/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml +++ b/cal_and_val/f3-vehicles/2021 Fiat Panda Mild Hybrid.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml b/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml index 15e018c1c..269a4ab00 100644 --- a/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml +++ b/cal_and_val/f3-vehicles/2021 Honda N-Box G.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml b/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml index de35bb248..2b6ee7631 100644 --- a/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml +++ b/cal_and_val/f3-vehicles/2021 Peugot 3008.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml b/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml index 25a0d9776..0fc47467e 100644 --- a/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml +++ b/cal_and_val/f3-vehicles/2022 Ford F-150 Lightning 4WD.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml b/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml index 119c5de7a..920cdf9d7 100755 --- a/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml +++ b/cal_and_val/f3-vehicles/2022 MINI Cooper SE Hardtop 2 door.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml b/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml index afacd9848..0b6a3c03e 100644 --- a/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml +++ b/cal_and_val/f3-vehicles/2022 Renault Megane E-Tech.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml b/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml index 33ce992ac..21a04cc35 100644 --- a/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml +++ b/cal_and_val/f3-vehicles/2022 Renault Zoe ZE50 R135.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml b/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml index f6c4ff29d..a4e1b8ed9 100644 --- a/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml +++ b/cal_and_val/f3-vehicles/2022 Tesla Model 3 RWD.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml b/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml index dd55dabcf..975088c73 100644 --- a/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml +++ b/cal_and_val/f3-vehicles/2022 Tesla Model Y RWD.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.05 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml b/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml index 432a290df..6c94fe4dd 100644 --- a/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml +++ b/cal_and_val/f3-vehicles/2022 Toyota RAV4 Hybrid LE.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 0.9 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml b/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml index ec0eb6344..3716f7e84 100644 --- a/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml +++ b/cal_and_val/f3-vehicles/2022 Toyota Yaris Hybrid Mid.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 0.9 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml b/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml index ece161ecf..9ecd68f30 100644 --- a/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml +++ b/cal_and_val/f3-vehicles/2022 Volvo XC40 Recharge twin.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml b/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml index 7440a52e8..b8a24931f 100644 --- a/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml +++ b/cal_and_val/f3-vehicles/2023 Mitsubishi Pajero Sport.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml b/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml index d01ecc3ba..54624efea 100644 --- a/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml +++ b/cal_and_val/f3-vehicles/2023 Polestar 2 Long range Dual motor.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml b/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml index 13209dd6a..8384ccf4c 100644 --- a/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml +++ b/cal_and_val/f3-vehicles/2023 Volvo C40 Recharge.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.02 max_soc: 0.981538462 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml b/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml index 55513cbc2..262ae0eb5 100644 --- a/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml +++ b/cal_and_val/f3-vehicles/2024 BYD Dolphin Active.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml b/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml index a947f44cb..2a39a64ee 100644 --- a/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml +++ b/cal_and_val/f3-vehicles/2024 Toyota Vios 1.5 G.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml b/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml index ec6c5b7a0..31b63a5e0 100644 --- a/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml +++ b/cal_and_val/f3-vehicles/2024 VinFast VF e34.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.0 max_soc: 1.0 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml b/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml index cc74f181f..15f23a751 100644 --- a/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml +++ b/cal_and_val/f3-vehicles/2024 Volkswagen Polo 1.0 MPI.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/BYD ATTO 3.yaml b/cal_and_val/f3-vehicles/BYD ATTO 3.yaml index eb92ce114..eca603265 100644 --- a/cal_and_val/f3-vehicles/BYD ATTO 3.yaml +++ b/cal_and_val/f3-vehicles/BYD ATTO 3.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml b/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml index 2b64b8416..d80bb0b56 100644 --- a/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml +++ b/cal_and_val/f3-vehicles/Bajaj Boxer 150.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml b/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml index 7a3fdc38a..6d88db724 100644 --- a/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml +++ b/cal_and_val/f3-vehicles/Class 4 Truck (Isuzu NPR HD).yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Line Haul Conv.yaml b/cal_and_val/f3-vehicles/Line Haul Conv.yaml index 3f8da567a..877ab4e6f 100644 --- a/cal_and_val/f3-vehicles/Line Haul Conv.yaml +++ b/cal_and_val/f3-vehicles/Line Haul Conv.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml b/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml index 71947c9bf..00396a017 100644 --- a/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml +++ b/cal_and_val/f3-vehicles/Maruti Swift 4cyl 2WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Nissan Navara.yaml b/cal_and_val/f3-vehicles/Nissan Navara.yaml index a10c986f2..c593f3225 100644 --- a/cal_and_val/f3-vehicles/Nissan Navara.yaml +++ b/cal_and_val/f3-vehicles/Nissan Navara.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml b/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml index e68eca424..72f5a4c7c 100644 --- a/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml +++ b/cal_and_val/f3-vehicles/Regional Delivery Class 8 Truck.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml b/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml index 5954e9906..eb5e773bb 100644 --- a/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml +++ b/cal_and_val/f3-vehicles/Renault Clio IV diesel.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml b/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml index b0758d18c..b362188e3 100644 --- a/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml +++ b/cal_and_val/f3-vehicles/Renault Megane 1.5 dCi Authentique.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml b/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml index 8b072b168..0942aaf7e 100644 --- a/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml +++ b/cal_and_val/f3-vehicles/Toyota Corolla Cross Hybrid.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 0.9 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml b/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml index 3c8a56832..f5e3357a6 100644 --- a/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml +++ b/cal_and_val/f3-vehicles/Toyota Etios Liva diesel.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml b/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml index 65559ee82..0663f2965 100644 --- a/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml +++ b/cal_and_val/f3-vehicles/Toyota Hilux Double Cab 4WD.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/cal_and_val/f3-vehicles/Toyota Mirai.yaml b/cal_and_val/f3-vehicles/Toyota Mirai.yaml index 36cff5061..6c4bc842a 100644 --- a/cal_and_val/f3-vehicles/Toyota Mirai.yaml +++ b/cal_and_val/f3-vehicles/Toyota Mirai.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.4 max_soc: 0.8 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml b/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml index 73b0b846b..3f76680dd 100644 --- a/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml +++ b/fastsim-core/resources/vehicles/2012_Ford_Fusion.yaml @@ -56,7 +56,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml b/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml index c8a83cb7e..399582a5a 100755 --- a/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml +++ b/fastsim-core/resources/vehicles/2016_TOYOTA_Prius_Two.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.25 max_soc: 0.95 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 @@ -110,7 +111,7 @@ pt_type: strategy: Linear extrapolate: Error pwr_idle_fuel_watts: 0.0 - aux_eff: + aux_supply_eff: Constant: 1.0 state: i: 0 diff --git a/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml b/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml index 9dcc4bad5..48ddf08fa 100644 --- a/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml +++ b/fastsim-core/resources/vehicles/2022_Renault_Zoe_ZE50_R135.yaml @@ -14,7 +14,8 @@ pt_type: Constant: 0.9848857801796105 min_soc: 0.029 max_soc: 0.98 - aux_eff: ~ + aux_supply_eff: + Constant: 1.0 state: pwr_prop_max_watts: 0.0 pwr_regen_max_watts: 0.0 diff --git a/fastsim-core/src/vehicle/bev.rs b/fastsim-core/src/vehicle/bev.rs index acb1e625f..b9a159bd1 100644 --- a/fastsim-core/src/vehicle/bev.rs +++ b/fastsim-core/src/vehicle/bev.rs @@ -206,12 +206,11 @@ impl Powertrain for BatteryElectricVehicle { self.res .set_curr_pwr_out_max(dt, disch_buffer, chrg_buffer) .with_context(|| anyhow!(format_dbg!()))?; - let aux_eff = match &self.res.aux_eff { - Some(AuxEfficiency::Constant(interp)) => interp.interpolate(&[]), - None => Ok(1.0), + let aux_supply_eff = match &self.res.aux_supply_eff { + AuxSupplyEfficiency::Constant(interp) => interp.interpolate(&[]), }?; self.res - .set_curr_pwr_prop_max(pwr_aux / aux_eff) + .set_curr_pwr_prop_max(pwr_aux / aux_supply_eff) .with_context(|| anyhow!(format_dbg!()))?; self.em .set_curr_pwr_prop_out_max( diff --git a/fastsim-core/src/vehicle/conv.rs b/fastsim-core/src/vehicle/conv.rs index 2343c0bdc..5012937b7 100644 --- a/fastsim-core/src/vehicle/conv.rs +++ b/fastsim-core/src/vehicle/conv.rs @@ -181,20 +181,18 @@ impl Init for ConventionalVehicle { "Warning: deprecated field `alt_eff` = `{}` is not equal to 1.0, which is the default value. This field will be removed in a future release.", self.alt_eff.get::() ); - if self.fc.aux_eff.is_none() { - // if alt_eff != 1.0 is provided and aux_eff is not set - // use alt_eff to set aux_eff - self.fc.aux_eff = Some(self.alt_eff.get::().into()); - } else if let Some(AuxEfficiency::Constant(interp)) = &self.fc.aux_eff { - if interp.0 != self.alt_eff.get::() { - // if provided both alt_eff != 1.0 and Some aux_eff that is not equivalent - // emit warning that aux_eff overrides alt_eff - eprintln!( - "Warning: provided deprecated field `alt_eff` = `{}` is being overridden by `fc.aux_eff`. The `alt_eff` field will be removed in a future release.", - self.alt_eff.get::() - ); + match &self.fc.aux_supply_eff { + AuxSupplyEfficiency::Constant(interp) => { + if interp.0 != self.alt_eff.get::() { + // if provided both alt_eff != 1.0 and aux_eff that is not equivalent + // emit warning that aux_eff overrides alt_eff + eprintln!( + "Warning: provided deprecated field `alt_eff` = `{}` is being overridden by `fc.aux_supply_eff`. The `alt_eff` field will be removed in a future release.", + self.alt_eff.get::() + ); + } } - } + }; } self.fc .init() @@ -237,12 +235,11 @@ impl Powertrain for Box { self.fc .set_curr_pwr_out_max(dt) .with_context(|| anyhow!(format_dbg!()))?; - let aux_eff = match &self.fc.aux_eff { - Some(AuxEfficiency::Constant(interp)) => interp.interpolate(&[]), - None => Ok(1.0), + let aux_supply_eff = match &self.fc.aux_supply_eff { + AuxSupplyEfficiency::Constant(interp) => interp.interpolate(&[]), }?; self.fc - .set_curr_pwr_prop_max(pwr_aux / aux_eff) + .set_curr_pwr_prop_max(pwr_aux / aux_supply_eff) .with_context(|| anyhow!(format_dbg!()))?; self.transmission .set_curr_pwr_prop_out_max( diff --git a/fastsim-core/src/vehicle/mod.rs b/fastsim-core/src/vehicle/mod.rs index 1cfc1a24e..6c47e4ea4 100755 --- a/fastsim-core/src/vehicle/mod.rs +++ b/fastsim-core/src/vehicle/mod.rs @@ -29,4 +29,4 @@ pub use powertrain::traits::Powertrain; pub use powertrain::transmission::Transmission; pub use powertrain_type::PowertrainType; pub use traits::*; -pub use vehicle_model::{AuxEfficiency, Vehicle, VehicleState}; +pub use vehicle_model::{AuxSupplyEfficiency, Vehicle, VehicleState}; diff --git a/fastsim-core/src/vehicle/powertrain/fuel_converter.rs b/fastsim-core/src/vehicle/powertrain/fuel_converter.rs index b3f31f6df..04abf8857 100755 --- a/fastsim-core/src/vehicle/powertrain/fuel_converter.rs +++ b/fastsim-core/src/vehicle/powertrain/fuel_converter.rs @@ -40,7 +40,7 @@ pub struct FuelConverter { /// Efficiency to apply to aux load #[serde(default)] - pub aux_eff: Option, + pub aux_supply_eff: AuxSupplyEfficiency, /// struct for tracking current state #[serde(default)] @@ -112,7 +112,7 @@ impl FuelConverter { eff_interp_from_pwr_out: InterpolatorEnumOwned, pwr_for_peak_eff: si::Power, pwr_idle_fuel: si::Power, - aux_eff: Option, + aux_supply_eff: AuxSupplyEfficiency, save_interval: Option, ) -> anyhow::Result { let mut fc = Self { @@ -125,7 +125,7 @@ impl FuelConverter { eff_interp_from_pwr_out, pwr_for_peak_eff, pwr_idle_fuel, - aux_eff, + aux_supply_eff, state: FuelConverterState::default(), history: FuelConverterStateHistoryVec::default(), save_interval, @@ -142,11 +142,9 @@ impl Init for FuelConverter { .mass() .map_err(|err| Error::InitError(format_dbg!(err)))?; self.thrml.init()?; - if let Some(aux_eff) = self.aux_eff.as_mut() { - aux_eff - .validate() - .map_err(|err| Error::InitError(format_dbg!(err)))?; - } + self.aux_supply_eff + .validate() + .map_err(|err| Error::InitError(format_dbg!(err)))?; self.state .init() .map_err(|err| Error::InitError(format_dbg!(err)))?; @@ -526,7 +524,7 @@ impl TryFrom for FuelConverter { pwr_for_peak_eff: uc::KW * f64::NAN, // this gets updated in `init` // this means that aux power must include idle fuel pwr_idle_fuel: si::Power::ZERO, - aux_eff: Some(f2veh.alt_eff.into()), + aux_supply_eff: f2veh.alt_eff.into(), save_interval: Some(1), } .try_into() @@ -553,7 +551,7 @@ impl TryFrom for FuelConverter { // TODO: make a function for setting this according with below line // this means that aux power must include idle fuel pwr_idle_fuel: si::Power::ZERO, - aux_eff: fcbuilder.aux_eff, + aux_supply_eff: fcbuilder.aux_supply_eff, save_interval: Some(1), history: Default::default(), }; @@ -580,7 +578,7 @@ pub struct FCBuilder { /// idle fuel power to overcome internal friction (not including aux load) \[W\] pub pwr_idle_fuel: si::Power, /// Efficiency to apply to aux load - pub aux_eff: Option, + pub aux_supply_eff: AuxSupplyEfficiency, /// time step interval between saves. 1 is a good option. If None, no saving occurs. pub save_interval: Option, } @@ -1386,7 +1384,7 @@ mod tests { .unwrap(), pwr_for_peak_eff: peak_pwr * 0.8, pwr_idle_fuel: idle_pwr, - aux_eff: None, + aux_supply_eff: Default::default(), state: fc_state, history: FuelConverterStateHistoryVec::default(), save_interval: Option::None, diff --git a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs index 324dd9283..6c70ae5e7 100644 --- a/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs +++ b/fastsim-core/src/vehicle/powertrain/reversible_energy_storage.rs @@ -39,7 +39,7 @@ pub struct ReversibleEnergyStorage { /// Efficiency to apply to aux load #[serde(default)] - pub aux_eff: Option, + pub aux_supply_eff: AuxSupplyEfficiency, /// struct for tracking current state #[serde(default)] @@ -142,7 +142,7 @@ impl ReversibleEnergyStorage { eff_interp: RESEfficiency, min_soc: si::Ratio, max_soc: si::Ratio, - aux_eff: Option, + aux_supply_eff: AuxSupplyEfficiency, save_interval: Option, ) -> anyhow::Result { let mut reversible_energy_storage = Self { @@ -154,7 +154,7 @@ impl ReversibleEnergyStorage { eff_interp, min_soc, max_soc, - aux_eff, + aux_supply_eff, state: ReversibleEnergyStorageState::default(), history: ReversibleEnergyStorageStateHistoryVec::default(), save_interval, @@ -824,11 +824,9 @@ impl Init for ReversibleEnergyStorage { self.eff_interp .validate() .map_err(|err| Error::InitError(format_dbg!(err)))?; - if let Some(aux_eff) = self.aux_eff.as_mut() { - aux_eff - .validate() - .map_err(|err| Error::InitError(format_dbg!(err)))?; - } + self.aux_supply_eff + .validate() + .map_err(|err| Error::InitError(format_dbg!(err)))?; self.state .init() .map_err(|err| Error::InitError(format_dbg!(err)))?; @@ -872,7 +870,7 @@ impl TryFrom for ReversibleEnergyStorage { eff_interp: RESEfficiency::Constant(Interp0D::new(f2veh.ess_round_trip_eff.sqrt())), min_soc: f2veh.min_soc * uc::R, max_soc: f2veh.max_soc * uc::R, - aux_eff: None, + aux_supply_eff: Default::default(), save_interval: Some(1), history: Default::default(), }; diff --git a/fastsim-core/src/vehicle/vehicle_model.rs b/fastsim-core/src/vehicle/vehicle_model.rs index 1cdd2c5e4..9c371ddb5 100644 --- a/fastsim-core/src/vehicle/vehicle_model.rs +++ b/fastsim-core/src/vehicle/vehicle_model.rs @@ -23,24 +23,20 @@ impl Init for AuxSource {} /// Efficiency model for aux load power source #[derive(Clone, Debug, Deserialize, Serialize, PartialEq, IsVariant, TryInto)] -pub enum AuxEfficiency { +pub enum AuxSupplyEfficiency { Constant(Interp0D), } -impl_efficiency_enum!(AuxEfficiency { Constant }); +impl_efficiency_enum!(AuxSupplyEfficiency { Constant }); -// impl Default for AuxEfficiency { -// /// Default to 100% efficiency. -// /// Necessary for backwards compatibility when field is missing. -// /// Also used in unwrap_or_default() calls. -// fn default() -> Self { -// AuxEfficiency::Constant(Interp0D(1.0)) -// } -// } - -// pub(crate) fn default_aux_efficiency() -> AuxEfficiency { -// AuxEfficiency::Constant(Interp0D(1.0)) -// } +impl Default for AuxSupplyEfficiency { + /// Default to 100% efficiency. + /// Necessary for backwards compatibility when field is missing. + /// Also used in unwrap_or_default() calls. + fn default() -> Self { + AuxSupplyEfficiency::Constant(Interp0D(1.0)) + } +} #[serde_api] #[cfg_attr(feature = "pyo3", pyclass(module = "fastsim", subclass, eq))] @@ -1266,7 +1262,7 @@ pub(crate) mod tests { )?, // eff_interp_from_pwr_out 0.4 * 211088.0 * uc::W, // pwr_for_peak_eff 0.0 * uc::W, // pwr_idle_fuel - Option::None, + Default::default(), Option::None, )?; let tx = Transmission::new( @@ -1355,7 +1351,7 @@ pub(crate) mod tests { RESEfficiency::Constant(Interp0D(0.9)), // eff_interp 0.0 * uc::R, // min_soc 1.0 * uc::R, // max_soc - Option::None, // aux_eff + Default::default(), // aux_eff Option::None, )?; let fs = FuelStorage::new( @@ -1397,7 +1393,7 @@ pub(crate) mod tests { )?, // eff_interp_from_pwr_out 0.4 * 211088.0 * uc::W, // pwr_for_peak_eff 0.0 * uc::W, // pwr_idle_fuel - Option::None, + Default::default(), Option::None, )?; let em = ElectricMachine::new( diff --git a/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs b/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs index 6dd6906c7..001243f39 100644 --- a/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs +++ b/fastsim-core/src/vehicle/vehicle_model/fastsim2_interface.rs @@ -77,13 +77,9 @@ impl Vehicle { pub fn to_fastsim2(&self) -> anyhow::Result { let mut veh = fastsim_2::vehicle::RustVehicle { alt_eff: match &self.pt_type { - PowertrainType::ConventionalVehicle(conv) => { - if let Some(AuxEfficiency::Constant(interp)) = &conv.fc.aux_eff { - interp.0 - } else { - conv.alt_eff.get::() - } - } + PowertrainType::ConventionalVehicle(conv) => match &conv.fc.aux_supply_eff { + AuxSupplyEfficiency::Constant(interp) => interp.interpolate(&[])?, + }, _ => 1.0, }, alt_eff_doc: None, From 0674b6f5a20b04cdfa6b81d088d5b112cc78facc Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Tue, 21 Jul 2026 13:09:46 -0600 Subject: [PATCH 6/7] minor init cleanup --- fastsim-core/src/vehicle/conv.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/fastsim-core/src/vehicle/conv.rs b/fastsim-core/src/vehicle/conv.rs index 5012937b7..bd00d1a3d 100644 --- a/fastsim-core/src/vehicle/conv.rs +++ b/fastsim-core/src/vehicle/conv.rs @@ -174,21 +174,22 @@ impl SerdeAPI for ConventionalVehicle {} impl Init for ConventionalVehicle { #[allow(deprecated)] fn init(&mut self) -> Result<(), Error> { - if self.alt_eff != 1.0 * uc::R { + let alt_eff = self.alt_eff.get::(); + if alt_eff != 1.0 { // when supplied an alt_eff that would have an effect on simulation: // - emit warning about deprecated field eprintln!( "Warning: deprecated field `alt_eff` = `{}` is not equal to 1.0, which is the default value. This field will be removed in a future release.", - self.alt_eff.get::() + alt_eff ); match &self.fc.aux_supply_eff { AuxSupplyEfficiency::Constant(interp) => { - if interp.0 != self.alt_eff.get::() { + if interp.0 != alt_eff { // if provided both alt_eff != 1.0 and aux_eff that is not equivalent // emit warning that aux_eff overrides alt_eff eprintln!( "Warning: provided deprecated field `alt_eff` = `{}` is being overridden by `fc.aux_supply_eff`. The `alt_eff` field will be removed in a future release.", - self.alt_eff.get::() + alt_eff ); } } From b52e96b44370ec092a6e1511ab415eb08d316e40 Mon Sep 17 00:00:00 2001 From: Kyle Carow Date: Tue, 28 Jul 2026 18:37:03 -0600 Subject: [PATCH 7/7] merge to add Default and From impls --- fastsim-core/src/macros.rs | 6 ------ fastsim-core/src/vehicle/vehicle_model.rs | 9 --------- 2 files changed, 15 deletions(-) diff --git a/fastsim-core/src/macros.rs b/fastsim-core/src/macros.rs index dd70e57cf..3f84fb45e 100644 --- a/fastsim-core/src/macros.rs +++ b/fastsim-core/src/macros.rs @@ -155,12 +155,6 @@ macro_rules! impl_efficiency_enum { } } - impl From for $enum_ty { - fn from(value: f64) -> Self { - Self::Constant(ninterp::prelude::Interp0D(value)) - } - } - impl $crate::utils::interp::InterpolatorScanValues for $enum_ty { fn try_for_each_value Result<(), E>>(&self, f: F) -> Result<(), E> { ::paste::paste! { diff --git a/fastsim-core/src/vehicle/vehicle_model.rs b/fastsim-core/src/vehicle/vehicle_model.rs index 9c371ddb5..9b0d9384e 100644 --- a/fastsim-core/src/vehicle/vehicle_model.rs +++ b/fastsim-core/src/vehicle/vehicle_model.rs @@ -29,15 +29,6 @@ pub enum AuxSupplyEfficiency { impl_efficiency_enum!(AuxSupplyEfficiency { Constant }); -impl Default for AuxSupplyEfficiency { - /// Default to 100% efficiency. - /// Necessary for backwards compatibility when field is missing. - /// Also used in unwrap_or_default() calls. - fn default() -> Self { - AuxSupplyEfficiency::Constant(Interp0D(1.0)) - } -} - #[serde_api] #[cfg_attr(feature = "pyo3", pyclass(module = "fastsim", subclass, eq))] #[derive(PartialEq, Clone, Debug, Serialize, Deserialize, StateMethods)]