NatLabRockies / NatLabRockies/fastsim

Series Hybrids: add `HybridArchitecture` enum for HybridElectricVehicle

Open
#283 0 comments 0 reactions 1 assignee View on GitHub

@kylecarow is already working on this.

Since Jul 15, 2026.

enhancement
Dominant language
Rust
Stars
60
Forks
19
Avg merge
10d 2h
Merged PRs (30d)
2

Description

FASTSim models all HEVs as parallel hybrids, where the power being supplied to the transmission can come from a combination of EM & FC

We should introduce a new field on HybridElectricVehicle: an enum that allows us to explicitly model different hybrid architectures:

pub struct HybridElectricVehicle {
    // ...
    #[serde(default)]
    pub architecture: HybridArchitecture,
    // ...
}

pub enum HybridArchitecture {
    // default option, for compatibility with existing models
    Parallel,
    Series { generator: ElectricMachine },
    // future work:
    // PowerSplit { motor_generator: ElectricMachine },
}

impl Default for HybridArchitecture {
    fn default() -> Self {
        Self::Parallel
    }
}

This will need to be matched on in both directions to add new logic:

  • set_curr_pwr_prop_out_max (component limit calculations, calculated power sources -> wheels)
  • solve (power flow, calculated wheels <- power sources)

Necessary for #270, as foundational conceptual work rather than necessary for FuelCellElectricVehicle

Image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.