suboptimumg.sweep.energy_grid_models#
- class suboptimumg.sweep.energy_grid_models.EnergyGridConfig[source]#
Bases:
BaseModelConfiguration for energy-constrained grid characterization.
Sweeps two design variables on a regular grid. At each grid point, coast_trigger is solved via bisection so that 22-lap endurance energy equals (pack capacity - buffer).
Fields# Field
Type
Required
Default
Constraints
intNo
40gt=0
floatNo
0.05gt=0
floatNo
0.1ge=0
Tuple[float,float]No
(5.0, 50.0)Yes
Yes
- Parameters:
var_1 (SweepParamConfig)
var_2 (SweepParamConfig)
coast_trigger_bounds (Tuple[float, float])
capacity_buffer_kwh (Annotated[float, Ge(ge=0)])
bisection_tol (Annotated[float, Gt(gt=0)])
bisection_max_iter (Annotated[int, Gt(gt=0)])
- bisection_max_iter: int#
- bisection_tol: float#
- capacity_buffer_kwh: float#
- coast_trigger_bounds: Tuple[float, float]#
- var_1: SweepParamConfig#
- var_2: SweepParamConfig#
- class suboptimumg.sweep.energy_grid_models.EnergyGridData[source]#
Bases:
BaseModelCollected 2D grid results for all metrics.
Fields# Field
Type
Required
Default
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[int64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
floatYes
ndarray[tuple[Any, …],dtype[bool]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
floatYes
floatYes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
ndarray[tuple[Any, …],dtype[float64]]Yes
strYes
ndarray[tuple[Any, …],dtype[float64]]Yes
strYes
ndarray[tuple[Any, …],dtype[float64]]Yes
- Parameters:
var_1_name (str)
var_1_list (ndarray[tuple[Any, ...], dtype[float64]])
var_2_name (str)
var_2_list (ndarray[tuple[Any, ...], dtype[float64]])
nominal_pack_weight (float)
nominal_capacity (float)
energy_density (float)
total_pts (ndarray[tuple[Any, ...], dtype[float64]])
accel_pts (ndarray[tuple[Any, ...], dtype[float64]])
skidpad_pts (ndarray[tuple[Any, ...], dtype[float64]])
autoX_pts (ndarray[tuple[Any, ...], dtype[float64]])
endurance_pts (ndarray[tuple[Any, ...], dtype[float64]])
efficiency_pts (ndarray[tuple[Any, ...], dtype[float64]])
accel_t (ndarray[tuple[Any, ...], dtype[float64]])
skidpad_t (ndarray[tuple[Any, ...], dtype[float64]])
autoX_t (ndarray[tuple[Any, ...], dtype[float64]])
endurance_t (ndarray[tuple[Any, ...], dtype[float64]])
optimal_coast_trigger (ndarray[tuple[Any, ...], dtype[float64]])
net_energy_kwh (ndarray[tuple[Any, ...], dtype[float64]])
capacity_kwh (ndarray[tuple[Any, ...], dtype[float64]])
vehicle_mass (ndarray[tuple[Any, ...], dtype[float64]])
feasible (ndarray[tuple[Any, ...], dtype[bool]])
bisection_iters (ndarray[tuple[Any, ...], dtype[int64]])
- accel_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- accel_t: ndarray[tuple[Any, ...], dtype[float64]]#
- autoX_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- autoX_t: ndarray[tuple[Any, ...], dtype[float64]]#
- bisection_iters: ndarray[tuple[Any, ...], dtype[int64]]#
- capacity_kwh: ndarray[tuple[Any, ...], dtype[float64]]#
- classmethod create(var_1_name, var_1_list, var_2_name, var_2_list, nominal_pack_weight, nominal_capacity, energy_density)[source]#
- Parameters:
var_1_name (str)
var_1_list (ndarray)
var_2_name (str)
var_2_list (ndarray)
nominal_pack_weight (float)
nominal_capacity (float)
energy_density (float)
- Return type:
- efficiency_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- endurance_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- endurance_t: ndarray[tuple[Any, ...], dtype[float64]]#
- energy_density: float#
- feasible: ndarray[tuple[Any, ...], dtype[bool]]#
- net_energy_kwh: ndarray[tuple[Any, ...], dtype[float64]]#
- nominal_capacity: float#
- nominal_pack_weight: float#
- optimal_coast_trigger: ndarray[tuple[Any, ...], dtype[float64]]#
- skidpad_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- skidpad_t: ndarray[tuple[Any, ...], dtype[float64]]#
- total_pts: ndarray[tuple[Any, ...], dtype[float64]]#
- var_1_list: ndarray[tuple[Any, ...], dtype[float64]]#
- var_1_name: str#
- var_2_list: ndarray[tuple[Any, ...], dtype[float64]]#
- var_2_name: str#
- vehicle_mass: ndarray[tuple[Any, ...], dtype[float64]]#
- class suboptimumg.sweep.energy_grid_models.EnergyGridProcessInput[source]#
Bases:
BaseModelFrozen input shipped to each worker process.
Fields# Field
Type
Required
Default
intYes
floatYes
floatYes
floatYes
floatYes
Yes
strYes
floatYes
strYes
floatYes
intYes
intYes
- Parameters:
comp_data (CompetitionData)
var_1_name (str)
var_1_value (float)
var_2_name (str)
var_2_value (float)
coast_trigger_lo (float)
coast_trigger_hi (float)
capacity_buffer_kwh (float)
bisection_tol (float)
bisection_max_iter (int)
x_idx (int)
y_idx (int)
- bisection_max_iter: int#
- bisection_tol: float#
- capacity_buffer_kwh: float#
- coast_trigger_hi: float#
- coast_trigger_lo: float#
- comp_data: CompetitionData#
- var_1_name: str#
- var_1_value: float#
- var_2_name: str#
- var_2_value: float#
- x_idx: int#
- y_idx: int#
- class suboptimumg.sweep.energy_grid_models.EnergyGridProcessOutput[source]#
Bases:
BaseModelFrozen output returned from each worker process.
Fields# Field
Type
Required
Default
floatNo
0floatNo
0floatNo
0floatNo
0intNo
0floatNo
0floatNo
0floatNo
0floatNo
0str|NoneNo
NoneboolYes
floatNo
0floatYes
floatNo
0floatNo
0floatYes
floatNo
0strNo
''intYes
intYes
- Parameters:
x_idx (int)
y_idx (int)
optimal_coast_trigger (float)
feasible (bool)
total_points (float)
accel_pts (float)
skidpad_pts (float)
autoX_pts (float)
endurance_pts (float)
efficiency_pts (float)
accel_t (float)
skidpad_t (float)
autoX_t (float)
endurance_t (float)
net_energy_kwh (float)
capacity_kwh (float)
vehicle_mass (float)
bisection_iters (int)
warnings (str)
error (str | None)
- accel_pts: float#
- accel_t: float#
- autoX_pts: float#
- autoX_t: float#
- bisection_iters: int#
- capacity_kwh: float#
- efficiency_pts: float#
- endurance_pts: float#
- endurance_t: float#
- error: str | None#
- feasible: bool#
- net_energy_kwh: float#
- optimal_coast_trigger: float#
- skidpad_pts: float#
- skidpad_t: float#
- total_points: float#
- vehicle_mass: float#
- warnings: str#
- x_idx: int#
- y_idx: int#