SerialEpisodeScenario
Economics scenarios · Implementation: mlsysim/engine/scenario_definitions/economics.py.
Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.
One serial episode as disjoint intervals; the model’s intervals sped up by model_speedup.
Notes
Equation: The result property delegates to the named solver documented below; it converts declared scenario units before passing the inputs.
Assumptions: Model, test, lifecycle, and runtime intervals are disjoint serial time contributions.
Excludes: Overlap, asynchronous work, and changes to non-model intervals under the speedup.
References
Derivation: the scenario composes mlsysim.solvers.SerialEpisodeModel. Their contracts supply the underlying equations; property equations show the remaining unit conversions and accounting.
Examples
>>> from mlsysim import Scenarios
>>> scenario = Scenarios.SerialRepairEpisode
>>> value = scenario.result
>>> type(value).__name__
'SerialEpisodeResult'Attributes
| Name | Description |
|---|---|
| lifecycle_intervals | |
| model_intervals | |
| model_speedup | |
| result | Return the typed accounting result from SerialEpisodeModel using this scenario’s |
| runtime_intervals | |
| tests |
model_intervals
Type: List[Quantity].
Declared default: required.
tests
Type: Quantity.
Declared default: required.
lifecycle_intervals
Type: List[Quantity].
Declared default: required.
runtime_intervals
Type: List[Quantity].
Declared default: required.
model_speedup
Type: float.
Declared default: required.
result
engine.scenario_types.SerialEpisodeScenario.result
Return the typed accounting result from SerialEpisodeModel using this scenario’s declared inputs; units and exclusions follow that solver contract.
Equation: SerialEpisodeModel().solve(secs(model_intervals), float(tests.to('second').magnitude), secs(lifecycle_intervals), secs(runtime_intervals), model_speedup); otherwise tuple((float(x.to('second').magnitude) for x in xs)).