Class ConditionBasedReliability
java.lang.Object
neqsim.process.safety.risk.condition.ConditionBasedReliability
- All Implemented Interfaces:
Serializable
Condition-Based Reliability Model.
Provides dynamic reliability estimation based on real-time equipment condition data. Integrates with process monitoring to update failure probabilities based on actual operating conditions rather than generic OREDA data.
- Version:
- 1.0
- Author:
- NeqSim Development Team
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classCondition indicator for equipment health monitoring.static enumDegradation model types.static classHealth record for historical tracking. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleCurrent adjusted failure rate.private doubleBase failure rate (failures/hour).Degradation model type.private StringEquipment identifier.private StringEquipment name.History of health indices.private doubleHealth index (0-1, 1 = perfect health).Condition indicators.private InstantLast update timestamp.private doubleRemaining useful life estimate (hours).private doubleConfidence in RUL estimate (0-1).private static final long -
Constructor Summary
ConstructorsConstructorDescriptionConditionBasedReliability(String equipmentId, String equipmentName, double baseFailureRate) Creates a condition-based reliability model. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a condition indicator.addTemperatureIndicator(String id, String name, double normal, double warning, double critical) Creates and adds a temperature indicator.addVibrationIndicator(String id, String name, double normal, double warning, double critical) Creates and adds a vibration indicator.private doublecalculateFailureRateMultiplier(double health) private voiddoubleGets all alarming indicators.doubleGets all critical indicators.doubledoubledoublegetMTTF()Gets mean time to failure (MTTF).doublegetProbabilityOfFailure(double hours) Gets probability of failure before specified time.doubledoublevoidRecalculates health index and adjusted failure rate.voidsetBaseFailureRate(double rate) voidtoJson()Converts to JSON string.toMap()Converts to map for JSON serialization.toReport()Generates status report.toString()voidupdateIndicator(String indicatorId, double value) Updates indicator value and recalculates health.voidupdateIndicators(Map<String, Double> values) Updates all indicators from a map.
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
equipmentId
Equipment identifier. -
equipmentName
Equipment name. -
baseFailureRate
private double baseFailureRateBase failure rate (failures/hour). -
adjustedFailureRate
private double adjustedFailureRateCurrent adjusted failure rate. -
healthIndex
private double healthIndexHealth index (0-1, 1 = perfect health). -
indicators
Condition indicators. -
degradationModel
Degradation model type. -
remainingUsefulLife
private double remainingUsefulLifeRemaining useful life estimate (hours). -
rulConfidence
private double rulConfidenceConfidence in RUL estimate (0-1). -
healthHistory
History of health indices. -
lastUpdated
Last update timestamp.
-
-
Constructor Details
-
ConditionBasedReliability
-
-
Method Details
-
addIndicator
Adds a condition indicator.- Parameters:
indicator- condition indicator
-
addVibrationIndicator
public ConditionBasedReliability.ConditionIndicator addVibrationIndicator(String id, String name, double normal, double warning, double critical) Creates and adds a vibration indicator.- Parameters:
id- indicator IDname- indicator namenormal- normal value (mm/s RMS)warning- warning thresholdcritical- critical threshold- Returns:
- created indicator
-
addTemperatureIndicator
public ConditionBasedReliability.ConditionIndicator addTemperatureIndicator(String id, String name, double normal, double warning, double critical) Creates and adds a temperature indicator.- Parameters:
id- indicator IDname- indicator namenormal- normal temperature (C)warning- warning thresholdcritical- critical threshold- Returns:
- created indicator
-
updateIndicator
Updates indicator value and recalculates health.- Parameters:
indicatorId- indicator IDvalue- new value
-
updateIndicators
-
recalculateHealth
public void recalculateHealth()Recalculates health index and adjusted failure rate. -
calculateFailureRateMultiplier
private double calculateFailureRateMultiplier(double health) -
estimateRUL
private void estimateRUL() -
getProbabilityOfFailure
public double getProbabilityOfFailure(double hours) Gets probability of failure before specified time.- Parameters:
hours- time horizon in hours- Returns:
- probability of failure
-
getMTTF
public double getMTTF()Gets mean time to failure (MTTF).- Returns:
- MTTF in hours
-
getAlarmingIndicators
Gets all alarming indicators.- Returns:
- list of alarming indicators
-
getCriticalIndicators
Gets all critical indicators.- Returns:
- list of critical indicators
-
getEquipmentId
-
getEquipmentName
-
getBaseFailureRate
public double getBaseFailureRate() -
setBaseFailureRate
public void setBaseFailureRate(double rate) -
getAdjustedFailureRate
public double getAdjustedFailureRate() -
getHealthIndex
public double getHealthIndex() -
getIndicators
-
getDegradationModel
-
setDegradationModel
-
getRemainingUsefulLife
public double getRemainingUsefulLife() -
getRULConfidence
public double getRULConfidence() -
getLastUpdated
-
getFailureRateMultiplier
public double getFailureRateMultiplier() -
toMap
-
toJson
-
toReport
-
toString
-