Skip to the content.

Corrosion Analysis Module

The neqsim.process.corrosion package provides industry-standard corrosion assessment tools for carbon steel and CRA material selection in CO2/H2S environments.

Classes

Class Standard Purpose
NorsokM506CorrosionRate NORSOK M-506 CO2 corrosion rate prediction (mm/yr)
NorsokM001MaterialSelection NORSOK M-001 Material grade recommendation and corrosion allowance
SourServiceAssessment ISO 15156 / NACE MR0175 Sour region classification, SSC/HIC/SOHIC risk
CO2CorrosionMaterialSelection NORSOK M-001 / EFC 17 CRA selection hierarchy based on CO2 corrosion rate
ChlorideSCCAssessment NORSOK M-001 / MTI 15 Chloride stress corrosion cracking risk for stainless steels
OxygenCorrosionAssessment NORSOK M-001 / NACE SP0499 Dissolved oxygen corrosion and pitting assessment
DensePhaseCO2Corrosion DNV-RP-J202 / ISO 27913 CCS pipeline corrosion — impurity limits, free water risk
AmmoniaCompatibility CGA G-2.1 / ASME B31.3 Ammonia service material compatibility and SCC assessment
HydrogenMaterialAssessment API 941 / ASME B31.12 Hydrogen embrittlement and HTHA assessment
NelsonCurveAssessment API 941 8th Ed High-temperature hydrogen attack (HTHA) Nelson curve check

Integration

The corrosion module integrates with the pipeline mechanical design system:

Integration Point Description
PipelineMechanicalDesign Orchestrates corrosion analysis from stream data
Pipeline Convenience methods for corrosion analysis on pipeline equipment

See the Pipeline Corrosion Integration Guide for full workflow.

Quick Start

Standalone Corrosion Rate

import neqsim.process.corrosion.NorsokM506CorrosionRate;

NorsokM506CorrosionRate model = new NorsokM506CorrosionRate();
model.setTemperatureCelsius(60.0);
model.setTotalPressureBara(100.0);
model.setCO2MoleFraction(0.02);
model.setFlowVelocityMs(3.0);
model.setPipeDiameterM(0.254);
model.calculate();

System.out.println("Corrosion rate: " + model.getCorrectedCorrosionRate() + " mm/yr");
System.out.println("Severity: " + model.getCorrosionSeverity());
System.out.println("pH: " + model.getCalculatedPH());

Material Selection

import neqsim.process.corrosion.NorsokM001MaterialSelection;

NorsokM001MaterialSelection selector = new NorsokM001MaterialSelection();
selector.setCO2CorrosionRateMmyr(2.5);
selector.setH2SPartialPressureBar(0.05);
selector.setChlorideConcentrationMgL(50000);
selector.setDesignTemperatureC(80.0);
selector.setDesignLifeYears(25);
selector.evaluate();

System.out.println("Material: " + selector.getRecommendedMaterial());
System.out.println("Service: " + selector.getServiceCategory());
System.out.println("CA: " + selector.getRecommendedCorrosionAllowanceMm() + " mm");

Integrated Pipeline Analysis

import neqsim.process.equipment.pipeline.PipeBeggsAndBrills;

// After running the pipeline simulation
pipe.setDesignLifeYears(25);
pipe.setInhibitorEfficiency(0.0);
pipe.runCorrosionAnalysis();

System.out.println("Rate: " + pipe.getCorrosionRate() + " mm/yr");
System.out.println("Material: " + pipe.getRecommendedMaterial());
System.out.println("CA: " + pipe.getRecommendedCorrosionAllowanceMm() + " mm");

Python (Jupyter)

from neqsim import jneqsim

NorsokM506 = jneqsim.process.corrosion.NorsokM506CorrosionRate

model = NorsokM506()
model.setTemperatureCelsius(60.0)
model.setTotalPressureBara(100.0)
model.setCO2MoleFraction(0.02)
model.setFlowVelocityMs(3.0)
model.setPipeDiameterM(0.254)
model.calculate()

print(f"Corrosion rate: {model.getCorrectedCorrosionRate():.2f} mm/yr")
print(f"Severity: {model.getCorrosionSeverity()}")

Standards Coverage

Standard Scope Implementation
NORSOK M-506 (2005/2017) CO2 corrosion rate model NorsokM506CorrosionRate
NORSOK M-001 Material selection guidelines NorsokM001MaterialSelection, CO2CorrosionMaterialSelection, ChlorideSCCAssessment, OxygenCorrosionAssessment
NACE MR0175 / ISO 15156 Sour service classification SourServiceAssessment, NorsokM001MaterialSelection
ISO 15156-2 Carbon steel in sour service SourServiceAssessment
ISO 15156-3 CRA in sour service SourServiceAssessment, CO2CorrosionMaterialSelection
EFC 16/17 CO2/H2S corrosion guidelines SourServiceAssessment, CO2CorrosionMaterialSelection
MTI Publication 15 Chloride SCC guidelines ChlorideSCCAssessment
NACE SP0499 Corrosion in water injection OxygenCorrosionAssessment
DNV-RP-J202 CCS pipeline corrosion DensePhaseCO2Corrosion
ISO 27913 CO2 transport by pipeline DensePhaseCO2Corrosion
CGA G-2.1 Ammonia piping/equipment AmmoniaCompatibility
ASME B31.3 / B31.12 Process piping / H2 piping AmmoniaCompatibility, HydrogenMaterialAssessment
API 941 Nelson curves / HTHA HydrogenMaterialAssessment, NelsonCurveAssessment