suboptimumg.sweep.models#

class suboptimumg.sweep.models.ArraySweepData[source]#

Bases: BaseModel

Strongly typed container for array sweep data.

Fields#

Field

Type

Required

Default

percent_steps

NDArray[float64]

Yes

sweep_outputs

list[SweepData1D]

Yes

Parameters:
  • percent_steps (NDArray[float64])

  • sweep_outputs (list[SweepData1D])

percent_steps: NDArray[np.float64]#
sweep_outputs: list[SweepData1D]#
class suboptimumg.sweep.models.ArraySweepProcessInput[source]#

Bases: BaseModel

Input model for array sweep process.

Fields#

Field

Type

Required

Default

comp_data

CompetitionData

Yes

step

float

Yes

step_idx

int

Yes

var_idx

int

Yes

var_name

str

Yes

Parameters:
  • comp_data (CompetitionData)

  • var_name (str)

  • step (float)

  • var_idx (int)

  • step_idx (int)

comp_data: CompetitionData#
step: float#
step_idx: int#
var_idx: int#
var_name: str#
class suboptimumg.sweep.models.ArraySweepProcessOutput[source]#

Bases: BaseModel

Output model for array sweep process.

Fields#

Field

Type

Required

Default

accel_pts

float

Yes

accel_t

float

Yes

autoX_pts

float

Yes

autoX_t

float

Yes

efficiency_pts

float

Yes

endurance_pts

float

Yes

endurance_t

float

Yes

error

str | None

No

None

plausible

bool

Yes

skidpad_pts

float

Yes

skidpad_t

float

Yes

step_idx

int

Yes

var_idx

int

Yes

warnings

str

No

''

Parameters:
  • var_idx (int)

  • step_idx (int)

  • plausible (bool)

  • 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)

  • warnings (str)

  • error (str | None)

accel_pts: float#
accel_t: float#
autoX_pts: float#
autoX_t: float#
efficiency_pts: float#
endurance_pts: float#
endurance_t: float#
error: str | None#
plausible: bool#
skidpad_pts: float#
skidpad_t: float#
step_idx: int#
var_idx: int#
warnings: str#
class suboptimumg.sweep.models.ArraySweepVariableInput[source]#

Bases: BaseModel

Per-variable sweep values used to build array sweep process inputs.

Fields#

Field

Type

Required

Default

name

str

Yes

sweep_values

NDArray[float64]

Yes

Parameters:
  • name (str)

  • sweep_values (NDArray[float64])

name: str#
sweep_values: NDArray[np.float64]#
class suboptimumg.sweep.models.MotorSweepData[source]#

Bases: BaseModel

Strongly typed container for motor sweep data.

Fields#

Field

Type

Required

Default

data_by_motor

dict[str, SweepData1D]

Yes

Parameters:

data_by_motor (dict[str, SweepData1D])

data_by_motor: dict[str, SweepData1D]#
class suboptimumg.sweep.models.SweepData1D[source]#

Bases: BaseModel

Strongly typed 1D sweep data container.

Fields#

Field

Type

Required

Default

accel_pts

NDArray[float64]

Yes

accel_t

NDArray[float64]

Yes

autoX_pts

NDArray[float64]

Yes

autoX_t

NDArray[float64]

Yes

efficiency_pts

NDArray[float64]

Yes

endurance_pts

NDArray[float64]

Yes

endurance_t

NDArray[float64]

Yes

plausible

NDArray[bool]

Yes

skidpad_pts

NDArray[float64]

Yes

skidpad_t

NDArray[float64]

Yes

sweep_values

NDArray[float64]

Yes

var_name

str

Yes

Parameters:
  • var_name (str)

  • sweep_values (NDArray[float64])

  • accel_pts (NDArray[float64])

  • skidpad_pts (NDArray[float64])

  • autoX_pts (NDArray[float64])

  • endurance_pts (NDArray[float64])

  • efficiency_pts (NDArray[float64])

  • accel_t (NDArray[float64])

  • skidpad_t (NDArray[float64])

  • autoX_t (NDArray[float64])

  • endurance_t (NDArray[float64])

  • plausible (NDArray[bool])

accel_pts: NDArray[np.float64]#
accel_t: NDArray[np.float64]#
autoX_pts: NDArray[np.float64]#
autoX_t: NDArray[np.float64]#
classmethod create(var_name, sweep_values)[source]#

Create a SweepData1D with pre-allocated numpy arrays of specified length.

Parameters:
  • var_name (str)

  • sweep_values (NDArray[float64])

Return type:

SweepData1D

efficiency_pts: NDArray[np.float64]#
endurance_pts: NDArray[np.float64]#
endurance_t: NDArray[np.float64]#
plausible: NDArray[np.bool_]#
skidpad_pts: NDArray[np.float64]#
skidpad_t: NDArray[np.float64]#
sweep_values: NDArray[np.float64]#
property total_pts: NDArray[float64]#

Compute total points as sum of all point categories.

var_name: str#
class suboptimumg.sweep.models.SweepData2D[source]#

Bases: BaseModel

Strongly typed 2D sweep data container.

Fields#

Field

Type

Required

Default

accel_pts

NDArray[float64]

Yes

accel_t

NDArray[float64]

Yes

autoX_pts

NDArray[float64]

Yes

autoX_t

NDArray[float64]

Yes

efficiency_pts

NDArray[float64]

Yes

endurance_pts

NDArray[float64]

Yes

endurance_t

NDArray[float64]

Yes

skidpad_pts

NDArray[float64]

Yes

skidpad_t

NDArray[float64]

Yes

var_list_1

NDArray[float64]

Yes

var_list_2

NDArray[float64]

Yes

var_name_1

str

Yes

var_name_2

str

Yes

Parameters:
  • var_name_1 (str)

  • var_list_1 (NDArray[float64])

  • var_name_2 (str)

  • var_list_2 (NDArray[float64])

  • accel_pts (NDArray[float64])

  • skidpad_pts (NDArray[float64])

  • autoX_pts (NDArray[float64])

  • endurance_pts (NDArray[float64])

  • efficiency_pts (NDArray[float64])

  • accel_t (NDArray[float64])

  • skidpad_t (NDArray[float64])

  • autoX_t (NDArray[float64])

  • endurance_t (NDArray[float64])

accel_pts: NDArray[np.float64]#
accel_t: NDArray[np.float64]#
autoX_pts: NDArray[np.float64]#
autoX_t: NDArray[np.float64]#
classmethod create(var_name_1, var_list_1, var_name_2, var_list_2)[source]#

Create a SweepData2D with pre-allocated numpy arrays of specified dimensions.

Parameters:
  • var_name_1 (str)

  • var_list_1 (NDArray[float64])

  • var_name_2 (str)

  • var_list_2 (NDArray[float64])

Return type:

SweepData2D

efficiency_pts: NDArray[np.float64]#
endurance_pts: NDArray[np.float64]#
endurance_t: NDArray[np.float64]#
skidpad_pts: NDArray[np.float64]#
skidpad_t: NDArray[np.float64]#
property total_pts: NDArray[float64]#

Compute total points as sum of all point categories.

var_list_1: NDArray[np.float64]#
var_list_2: NDArray[np.float64]#
var_name_1: str#
var_name_2: str#
class suboptimumg.sweep.models.SweepParamConfig[source]#

Bases: BaseModel

Fields needed to specify a sweep variable.

Fields#

Field

Type

Required

Default

max

float | int

Yes

min

float | int

Yes

name

str

Yes

steps

int

Yes

Validators#

Validator

Mode

Fields

check_valid

after

model

Parameters:
  • name (str)

  • min (float | int)

  • max (float | int)

  • steps (int)

check_valid()[source]#

Ensure min is strictly less than max.

Return type:

SweepParamConfig

max: float | int#
min: float | int#
name: str#
steps: int#
class suboptimumg.sweep.models.SweepProcessInput1D[source]#

Bases: BaseModel

Input model for 1D sweep process.

Fields#

Field

Type

Required

Default

comp_data

CompetitionData

Yes

dep_vals

dict[str, float]

No

factory

idx

int

Yes

var_1_name

str

Yes

var_1_value

float

Yes

Parameters:
  • comp_data (CompetitionData)

  • var_1_name (str)

  • var_1_value (float)

  • dep_vals (dict[str, float])

  • idx (int)

comp_data: CompetitionData#
dep_vals: dict[str, float]#
idx: int#
var_1_name: str#
var_1_value: float#
class suboptimumg.sweep.models.SweepProcessInput2D[source]#

Bases: BaseModel

Input model for 2D sweep process.

Fields#

Field

Type

Required

Default

comp_data

CompetitionData

Yes

dep_vals

dict[str, float]

No

factory

var_1_name

str

Yes

var_1_value

float

Yes

var_2_name

str

Yes

var_2_value

float

Yes

x_idx

int

Yes

y_idx

int

Yes

Parameters:
  • comp_data (CompetitionData)

  • var_1_name (str)

  • var_1_value (float)

  • var_2_name (str)

  • var_2_value (float)

  • dep_vals (dict[str, float])

  • x_idx (int)

  • y_idx (int)

comp_data: CompetitionData#
dep_vals: dict[str, float]#
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.models.SweepProcessOutput1D[source]#

Bases: BaseModel

Output model for 1D sweep process.

Fields#

Field

Type

Required

Default

accel_pts

float

Yes

accel_t

float

Yes

autoX_pts

float

Yes

autoX_t

float

Yes

efficiency_pts

float

Yes

endurance_pts

float

Yes

endurance_t

float

Yes

error

str | None

No

None

idx

int

Yes

skidpad_pts

float

Yes

skidpad_t

float

Yes

warnings

str

No

''

Parameters:
  • idx (int)

  • 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)

  • warnings (str)

  • error (str | None)

accel_pts: float#
accel_t: float#
autoX_pts: float#
autoX_t: float#
efficiency_pts: float#
endurance_pts: float#
endurance_t: float#
error: str | None#
idx: int#
skidpad_pts: float#
skidpad_t: float#
warnings: str#
class suboptimumg.sweep.models.SweepProcessOutput2D[source]#

Bases: BaseModel

Output model for 2D sweep process.

Fields#

Field

Type

Required

Default

accel_pts

float

Yes

accel_t

float

Yes

autoX_pts

float

Yes

autoX_t

float

Yes

efficiency_pts

float

Yes

endurance_pts

float

Yes

endurance_t

float

Yes

error

str | None

No

None

skidpad_pts

float

Yes

skidpad_t

float

Yes

warnings

str

No

''

x_idx

int

Yes

y_idx

int

Yes

Parameters:
  • x_idx (int)

  • y_idx (int)

  • 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)

  • warnings (str)

  • error (str | None)

accel_pts: float#
accel_t: float#
autoX_pts: float#
autoX_t: float#
efficiency_pts: float#
endurance_pts: float#
endurance_t: float#
error: str | None#
skidpad_pts: float#
skidpad_t: float#
warnings: str#
x_idx: int#
y_idx: int#