Class CUIRiskAssessment
java.lang.Object
neqsim.process.mechanicaldesign.designstandards.CUIRiskAssessment
- All Implemented Interfaces:
Serializable
Corrosion Under Insulation (CUI) risk assessment per API 581 / NORSOK M-501.
Provides temperature-based susceptibility screening, material and insulation type compatibility checks, and inspection interval recommendations following industry best practice.
CUI is one of the leading causes of unplanned shutdowns in process plants. The risk depends primarily on operating temperature, insulation type, coating system, and environment.
References:
- API 581: Risk-Based Inspection Methodology (CUI module)
- API 583: Corrosion Under Insulation and Fireproofing
- NORSOK M-501: Surface preparation and protective coating
- EFC Publication 55: CUI Guidelines
- Version:
- 1.0
- Author:
- esol
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumCUI risk level enumeration.static enumInsulation types and their CUI susceptibility. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final longSerialization version UID. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic CUIRiskAssessment.CUIRiskassessRisk(double operatingTempC, boolean isStainlessSteel, CUIRiskAssessment.InsulationType insulationType, double coatingAge, boolean isMarineEnvironment) Assess CUI risk based on operating temperature per API 581 screening criteria.static doubleestimateRemainingLife(double originalThicknessMm, double currentThicknessMm, double yearsInService) Estimate remaining corrosion allowance based on CUI conditions.static booleanisInsulationSuitable(CUIRiskAssessment.InsulationType insulationType, double operatingTempC) Check whether selected insulation type is appropriate for the operating temperature.static intRecommend inspection interval based on CUI risk level.Return recommended inspection methods for CUI detection.static doubletemperatureRiskScore(double operatingTempC, boolean isStainlessSteel) Calculate temperature-based risk score per API 581 / API 583 guidance.
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
-
Constructor Details
-
CUIRiskAssessment
public CUIRiskAssessment()
-
-
Method Details
-
assessRisk
public static CUIRiskAssessment.CUIRisk assessRisk(double operatingTempC, boolean isStainlessSteel, CUIRiskAssessment.InsulationType insulationType, double coatingAge, boolean isMarineEnvironment) Assess CUI risk based on operating temperature per API 581 screening criteria.Carbon steel is most susceptible to CUI in the range -4 C to 175 C (25 F to 350 F). The highest risk zone is 80-120 C where aqueous corrosion and wet-dry cycling are most aggressive.
- Parameters:
operatingTempC- operating temperature in CelsiusisStainlessSteel- true if material is austenitic stainless steel (300-series)insulationType- insulation typecoatingAge- years since last coating applicationisMarineEnvironment- true if offshore or coastal- Returns:
- CUI risk level
-
temperatureRiskScore
public static double temperatureRiskScore(double operatingTempC, boolean isStainlessSteel) Calculate temperature-based risk score per API 581 / API 583 guidance.- Parameters:
operatingTempC- operating temperature in CelsiusisStainlessSteel- true if austenitic stainless steel- Returns:
- risk score (0 = negligible, 1 = low, 3 = high, 5 = very high)
-
recommendedInspectionIntervalYears
Recommend inspection interval based on CUI risk level.- Parameters:
risk- CUI risk level- Returns:
- recommended inspection interval in years
-
recommendedInspectionMethods
Return recommended inspection methods for CUI detection.- Parameters:
risk- CUI risk level- Returns:
- list of recommended inspection technique names
-
isInsulationSuitable
public static boolean isInsulationSuitable(CUIRiskAssessment.InsulationType insulationType, double operatingTempC) Check whether selected insulation type is appropriate for the operating temperature.- Parameters:
insulationType- insulation typeoperatingTempC- operating temperature in Celsius- Returns:
- true if insulation type is suitable for the temperature
-
estimateRemainingLife
public static double estimateRemainingLife(double originalThicknessMm, double currentThicknessMm, double yearsInService) Estimate remaining corrosion allowance based on CUI conditions.- Parameters:
originalThicknessMm- original wall thickness in mmcurrentThicknessMm- measured current wall thickness in mmyearsInService- years in service- Returns:
- estimated remaining life in years at current corrosion rate, or Double.MAX_VALUE if no measurable thinning
-