Design¶
The Design
class is used to design a test based on certain assumptions.
A typical example of use:
import weibull
designer = weibull.Design(
target_cycles=10000,
reliability=0.9,
confidence_level=0.90,
expected_beta=1.5
)
# The 'test_cycles' parameter can be in any units.
# Days, weeks, hours, cycles, etc., so long
# as the target unit is consistent
print(f'Minimum number of units for 10000 hour run: {designer.num_of_units(test_cycles=10000)}')
print(f'Minimum hours for 20 units: {designer.num_of_cycles(number_of_units=20)}')
Class Documentation¶
-
class
weibull.
Design
(target_cycles: (<class 'int'>, <class 'float'>), reliability: float = 0.9, confidence_level: float = 0.9, expected_beta: float = 2.0)¶ Will determine the required test time required given the number of units under test and the target cycles OR it will determine the number of units given the test time and the target cycles.
Parameters: - target_cycles – The target number of cycles/minutes/hours
- reliability – The fraction of units still running after target_cycles, 0.001 to 0.999
- confidence_level – The fractional level of confidence, 0.001 to 0.999
- expected_beta – The anticipated level of beta - often worse-case - based on historical data or other assumptions
-
num_of_cycles
(number_of_units: int)¶ Design a test, calculating the test duration/cycles to prove the required reliability at target_cycles.
Returns: the required duration or cycles
-
num_of_units
(test_cycles: (<class 'int'>, <class 'float'>))¶ Design a test, calculating the number of units required to run for the test duration / cycles in order to prove the reliability at target_cycles.
Returns: The number of units required