MissionExposureScenario
Statistics scenarios · Implementation: mlsysim/engine/scenario_definitions/statistics.py.
Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.
Failure-free missions of mission at machine’s drive limit, with reset between them, that bound hazard_rate at one-sided confidence; and the exposure a relaxed target of one failure per relaxed_mtbf needs.
Notes
Equation: Failure-free exposure converts to mission count; adding resets converts active exposure to campaign time.
Assumptions: Constant hazard, repeated equal missions, and travel at the registered drive limit.
Excludes: Hazard variation, acceleration transients, and wear-dependent failure rates.
References
Derivation: Failure-free exposure converts to mission count; adding resets converts active exposure to campaign time. Individual property contracts identify the exact accounting expression or reusable calculation. Registry entries supply the scenario inputs; this class does not turn them into measured outcomes.
Examples
Evaluate a named scenario using its declared inputs.
>>> from mlsysim import Scenarios
>>> scenario = Scenarios.WarehouseMissionExposure
>>> round(float(scenario.mission_distance.magnitude), 4)
540.0Attributes
| Name | Description |
|---|---|
| calendar_time | Campaign hours including reset time between the modeled missions. |
| confidence | |
| continuous_exposure | Failure-free active hours needed for the constant-hazard target, excluding reset time. |
| cycle | Seconds per mission including the reset interval. |
| hazard_rate | |
| machine | |
| mission | |
| mission_distance | Meters traveled at the machine’s maximum drive speed during one mission. |
| mission_failure_probability | Rare-event approximation hazard times mission duration, a dimensionless probability |
| missions_needed | Failure-free mission count required by calc_zero_failure_mission_count. |
| relaxed_exposure | Failure-free operating hours for the less demanding reciprocal-MTBF target. |
| relaxed_mtbf | |
| reset | |
| wheel_revolutions | Total driven wheel revolutions at the stated diameter over the required mission |
machine
Type: Any.
Declared default: required.
hazard_rate
Type: Quantity.
Declared default: required.
mission
Type: Quantity.
Declared default: required.
reset
Type: Quantity.
Declared default: required.
confidence
Type: float.
Declared default: required.
relaxed_mtbf
Type: Quantity.
Declared default: required.
mission_distance
engine.scenario_types.MissionExposureScenario.mission_distance
Meters traveled at the machine’s maximum drive speed during one mission.
Equation: (machine.base.max_velocity * mission).to('m').
cycle
engine.scenario_types.MissionExposureScenario.cycle
Seconds per mission including the reset interval.
Equation: (mission + reset).to('s').
continuous_exposure
engine.scenario_types.MissionExposureScenario.continuous_exposure
Failure-free active hours needed for the constant-hazard target, excluding reset time.
Equation: calc_empirical_testing_exposure(hazard_rate, confidence=confidence).to('hour').
mission_failure_probability
engine.scenario_types.MissionExposureScenario.mission_failure_probability
Rare-event approximation hazard times mission duration, a dimensionless probability estimate.
Equation: (hazard_rate * mission).to('').magnitude.
missions_needed
engine.scenario_types.MissionExposureScenario.missions_needed
Failure-free mission count required by calc_zero_failure_mission_count.
Equation: calc_zero_failure_mission_count(hazard_rate, mission, confidence).
calendar_time
engine.scenario_types.MissionExposureScenario.calendar_time
Campaign hours including reset time between the modeled missions.
Equation: (missions_needed * cycle).to('hour').
wheel_revolutions
engine.scenario_types.MissionExposureScenario.wheel_revolutions
Total driven wheel revolutions at the stated diameter over the required mission distance.
Equation: (missions_needed * mission_distance / (_math.pi * machine.drive_unit.wheel_diameter)).to('').magnitude.
relaxed_exposure
engine.scenario_types.MissionExposureScenario.relaxed_exposure
Failure-free operating hours for the less demanding reciprocal-MTBF target.
Equation: calc_empirical_testing_exposure(1 / relaxed_mtbf, confidence=confidence).to('hour').